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 - "bioinformatics"
-
I've been lurking on devrant a while now, I figure it's time to add my first rant.
Little background and setting a frame of reference for the rant: I'm currently a software engineer in the bioinformatics field. I have a computer science background whereas a vast majority of those around me, especially other devs, are people with little to no formal computer background - mostly biology in some form or another. Now, this said, a lot of the other devs are excellent developers, but some are as bad as you could imagine.
I started at a new company in April. About a month after joining a dev who worked there left, and I inherited the pipeline he maintained. Primarily 3 perl scripts (yes, perl, welcome to bioinformatics, especially when it comes to legacy code like is seen in this pipeline) that mostly copied and generated some files and reports in different places. No biggie, until I really dove in.
This dev, which I barely feel he deserves to be called, is a biology major turned computer developer. He was hired at this company and learned to program on the job. That being said, I give him a bit of a pass as I'm sure he did not have had an adequate support structure to teach him any better, but still, some of this is BS.
One final note: not all of the code, especially a lot of the stupid logic, in this pipeline was developed by this other dev. A lot of it he adopted himself. However, he did nothing about it either, so I put fault on him.
Now, let's start.
1. perl - yay bioinformatics
2. Redundant code. Like, you literally copied 200+ lines of code into a function to change 3 lines in that code for a different condition, and added if(condition) {function();} else {existing code;}?? Seriously??
3. Whitesmiths indentation style.. why? Just, why? Fuck off with that. Where did you learn that and why do you insist on using it??
4. Mixing of whitesmiths and more common K&R indentation.
5. Fucked indentation. Code either not indented and even some code indented THE WRONG WAY
6. 10+ indentation levels. This, not "terrible" normally, but imagine this with the last 3 points. Cannot follow the code at freaking all.
7. Stupid logic. Like, for example, check if a string has a comma in it. If it does, split the string on the comma and push everything to an array. If not, just push the string to the array.... You, you know you can just split the string on the comma and push it, right?? If there is no comma it will be an array containing the original string.. Why the fuck did you think you needed to add a condition for that??
8. Functions that are called to set values in global variables, arrays, and hashes.. function has like 5 lines in it and is called in 2 locations. Just keep that code in place!
9. 50+ global variables/hashes/arrays in one of the scripts with no clear way to tell how/when values are set nor what they are used for.
10. Non-descriptive names for everything
11. Next to no comments in the code. What comments there are are barely useful.
12. No documentation
There's more, but this is all I can think to identify right now. All together these issues have made this pipeline the pinnacle of all the garbage that I've had to work on.
Attaching some screenshots of just a tiny fraction of the code to show some of the crap I'm talking about.6 -
Software engineering is slowly being lowered to a basic skill to please corporations that literally want you to automate your job away. The only fruitful areas of software engineering that I can see being relevant in the next 10 years are those mixed with other hard sciences such as bioinformatics, robotics, bleeding edge statistics and mathematics (AI research), physics, etc. The trend I see right now is that software engineering is being integrated with business-oriented degrees or arts degrees, targeted programs towards beginners offered for free or low prices. There's going to be a higher barrier of entry for the jobs that are actually worth the stress and I'm praying I'll be able to catch the train before it leaves the station.9
-
Didn't know what to do after school. Out of ideas I just randomly started bioinformatics.
Turned out to be one of the best decisions I made. -
As a bioinformatician I sometimes feel like I’m not fully a computational guy, but also I am not fully a biologist... anyone in an intermediary position like that?2
-
My fellow devs, appreciate what you have right now, even if it doesn't seem that great. I've recently switched majors from Bioinformatics to Medicine and I wouldn't say I regret it, but I do certainly doubt this decision sometimes. While studying Bioinformatics, I was always really interested in the biological part, often wanting to learn more about medical topics and such, thinking if I did switch, I could always keep programming as a hobby. Now I did switch and I miss being in a professional CS field so much. Medicine is great, but the people who study are mentally completely different from people that code. I still code small projects on the side, but don't really have anyone to talk to about them and I'm even starting to regret not paying more attention in linear algebra. I miss linear algebra, think about how ridiculous that is haha. Anyways, if you are looking forward to a major change in your life, it might not be all that you think it will be. So look at your current situation, it might be what you wanted all along.
Thanks for listening.
.
.
.
Also it is incredible, how technologically incompetent most medical students are lol4 -
What are you guys studying/what are your professions? What do you think of your study or profession? Also, what do you develop/what do you use to develop? I'm going to be studying bioinformatics next year, we'll be using java and python. The idea is to write programs that can find links in big data that stems from research on diseases and genetics. My two favourite subjects were always biology and computer science, (even though computer science in my middle school is a joke) so this study really appealed to me. I'm curious about you guys.4