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 - "quick sort"
-
Was lead developer at a small startup, I was hiring and had a budget to add 3 new people to my team to develop a new product for the company.
Some context first and then the rant!
Candidate 1 - Amazing, a dev I worked with before who was under utilized at the previous company. Still a junior, but, she was a quick learner and eager to expand her knowledge, never an issue.
Candidate 2 - Kickass dev with back end skills and extras, he was always eager to work a bit more than what was expected. I use to send him home early to annoy him. haha!
Candidate 3 - Lets call him P.
In the interview he answers every question perfectly, he asks all the right questions and suggests some things I havent even thought of. CTO goes ahead and says we should skip the technical test and just hire the guy, his smart and knows what his talking about, I agree and we hire him. (We where a bit desperate at this stage as well.)
He comes in a week early to pick up his work laptop to get setup before he starts the next week, awesome! This guy is going to be an asset to the company, cant wait to have him join the team - The CTO at this stage is getting ready to leave the company and I will be taking over the division and need someone to take over lead position, he seems like the guys to do it.
The guys starts the next week, he comes in and the laptop we gave him is now a local server for testing and he will be working off his own laptop, no issue, we are small so needed a testing stack, but wasnt really needed since we had procedures in place for this already.
Here is where everything goes wrong!!! First day goes great... Next day he gets in early 6:30am (Nice! NO!), he absolutely smells, no stinks, of weed, not a light smell, the entire fucking office smells of weed! (I have no problem with weed, just dont make it my problem to deal with). I get called by boss and told to sort this out people are complaining! I drive to office and have a meeting with him, he says its all good he understands. (This was Friday).
Monday comes around - Get a call from Boss at 7:30am. Whole office smells like weed, please talk to P again, this cannot happen again. I drive to office again, and he again says it wont happen again, he has some issues with back pain and the weed helps.
Tuesday - Same fucking thing! And now he doesnt want to sign for the laptop("server") that was given to him, and has moved to code in the boardroom, WHERE OUR FUCKING CLIENTS WILL BE VIEWING A DEMO THAT DAY OF THE PRODUCT!! Now that whole room smells like weed, FML!
Wednesday - We send P a formal letter that he is under probation, P calls me to have a meeting. In the meeting he blames me for not understanding "new age" medicine, I ask for his doctors prescription and ask why he didnt tell me this in the interview so I could make arrangements, we dont care if you are stoned, just do good work and be considerate to your co-workers. P cant provide these and keeps ranting, I suggest he takes pain killers, he has none of it only "new age" medicine for him.
Thursday - I ask him to rather "work" from home till we can get this sorted, he comes in for code reviews for 2 weeks. I can clearly see he has no idea how the system works but is trying, I thought I will dive deeper and look at all of his code. Its a mess, nothing makes sense and 50% of it is hard coded (We are building a decentralized API for huge data sets so this makes no sense).
Friday - In code review I confront him about this, he has excuses for everything, I start asking him harder questions about the project and to explain what we are building - he goes quiet and quits on the spot with a shitty apology.
From what I could make out he was really smart when it came to theory but interpreting the theory to actual practice wasnt possible for him, probably would have been easier if he wasnt high all the time.
I hate interview code tests, but learned a valuable lesson that day! Always test for some code knowledge as well even if you hate doing it, ask the right questions and be careful who you hire! You can only bullshit for so long in coding before someone figures out that you are a fraud.16 -
Hey Mm...Morty. What are you doing?
Oh gee Rick, I’m just...you know...using Linux and telling the internet how that makes me better than them.
Morty, you rr...realize that it...it...doesn’t matter what OS you use Morty. Y...y...you’re still a piece of shit Morty. I can prove it...burp...mathematically Morty. In the grand scheme of the universe...y...y...you are a bubble sort algorithm surrounded by quick sorts Morty.
Oh gee Rick.14 -
To become an engineer (CS/IT) in India, you have to study:
1. 3 papers in Physics (2 mechanics, 1 optics)
2. 1 paper in Chemistry
3. 2 papers in English (1 grammar, 1 professional communication). Sometimes 3 papers will be there.
4. 6 papers in Mathematics (sequences, series, linear algebra, complex numbers and related stuff, vectors and 3D geometry, differential calculus, integral calculus, maxima/minima, differential equations, descrete mathematics)
5. 1 paper in Economics
6. 1 paper in Business Management
7. 1 paper in Engineering Drawing (drawing random nuts and bolts, locus of point etc)
8. 1 paper in Electronics
9. 1 paper in Mechanical Workshop (sheet metal, wooden work, moulding, metal casting, fitting, lathe machine, milling machine, various drills)
And when you jump in real life scenario, you encounter source/revision/version control, profilers, build server, automated build toolchains, scripts, refactoring, debugging, optimizations etc. As a matter of fact none of these are touched in the course.
Sure, they teach you a large set of algorithms, but they don't tell you when to prefer insertion sort over quick sort, quick sort over merge sort etc. They teach you Las Vegas and Monte Carlo algorithms, but they don't tell you that the randomizer in question should pass Die Hard test (and then you wonder why algorithm is not working as expected). They teach compiler theory, but you cannot write a simple parser after passing the course. They taught you multicore architecture and multicore programming, but you don't know how to detect and fix a race condition. You passed entire engineering course with flying colors, and yet you don't know ABC of debugging (I wish you encounter some notorious heisenbug really soon). They taught 2-3 programming languages, and yet you cannot explain simple variable declaration.
And then, they say that you should have knowledge of multiple fields. Oh well! you don't have any damn idea about your major, and now you are talking about knowledge in multiple fields?
What is the point of such education?
PS: I am tired of interviewing shitty candidates with flying colours in their marksheets. Go kids, learn some real stuff first, and then talk some random bullshit.18 -
This is my most ridiculous meeting in my long career. The crazy thing is I have witnessed this scenario play out many times during my career. Sometimes it sits in waiting for a few years but then BOOM there it is again and again. In each case the person that fell into the insidious trap was smart and savvy but somehow it just happened. The outcomes were really embarrassing and in some cases career damaging. Other times, it was sort of humorous. I could see this happening to me and I never want it to happen to you.
Once upon a time in a land not so far away there was a Kickoff Meeting for an offsite work area recovery exercise being planned for our Oklahoma locations. Eleven Oklahoma high ranking senior executives were on this webinar plus three Enterprise IT Directors (Ellen, Jim and Bob) who would support the business from the systems side throughout the exercise.
The plan was for Sam Otto, our Midwest Director of Business Continuity to host this webinar. Sam had hands-on experience recovering to our third party recovery site vendor and he always did a great job. He motivated people to attend the exercise with the coolest breakfasts and lunches you could imagine. Donuts, bagels, pizza, wings, scrumptious salads, sandwiches, beverages and desserts. He was great with people and made it a lot of fun.
At the last minute Charles 'Don't Call Me Charlie' Ego-Smith, the Global Business Continuity Senior Vice President, decided to grand-stand Sam. He demanded the reins to the webinar. Pulled a last-minute power-play and made himself the host and presenter. You have probably seen the move at some point in your career. I guess the old saying, 'be careful what you wish for' has some truth to it - read on and let me know if you devRanters agree...
So, Charlie, I mean Charles, begins hosting the session and greets all of the attendees. Hey, good so far! He starts showing some slides in the PowerPoint presentation and he fields a few questions, comments and requests from the Oklahoma executives. The usual easy to handle requests such as, 'what if we are too busy to do recover all systems', 'what if we recover all of our processes from home', 'what if we have high profile visitors that month?' Hey you can't blame them for trying. You are probably thinking to yourself, 'been there - heard that!' But luckily our experienced team had anticipated the push-back. Fortunately, Senior Management 'had our backs' and committed that all processes and systems must participate and test - so these were just softball requests, 'easy-peasy' to handle. But wait, we are just getting started!
Now the fireworks begin. Bob, one if the Enterprise IT directors started asking a bunch of questions. Well, Charles had somewhat of a history with Bob from previous exercises and did not take kindly to Bob's string of questions. Charles started getting defensive and while Bob was speaking Charles started IM'ing. He's firing off one filthy message after another to me and our teammate Sam.
'This idiot Bob is the biggest pain in the ass that I ever worked with'; 'he doesn't know shit', 'he never shuts the f up', 'I wanna go over to his office and kick his f'in ass...!'
Unfortunately...the idiot Charles had control of the webinar and was sharing his screen so every message he sent was seen by all of the attendees! Yeah, everyone including Bob and the Senior Oklahoma executives! We could not instant message him to stop as everyone would have seen our warnings, so we tried to call Charles' cell phone and text him but he did not pick up. He just kept firing ridiculously embarrassing dirty IM messages and I guess we were all so stunned we just sat there bewildered. We finally bit the bullet and IM'ed him to STOP ALREADY!!! Whoa, talk about an embarrassing silence!
I really felt sorry for Bob. He is a good guy. Deservedly, Charlie 'Yes I am going to call you CHARLIE' got in big time hot water after the webinar with upper management. For one reason or another he only lasted another year or so at our company. Maybe this event played a part in his demise.
So, the morale is, if you use IM - turn it off during a webinar if you are the host. If you must use it, be really careful what you say, who you say it to and pray nothing embarrassing or personal is sent to you for everyone to see.
Quick Update - During the past couple of months I participated on many webinars with enterprise software vendors trying to sell me expensive solutions. Most of the vendors had their IM going while doing webinars and training. Some very embarrassing things came flying across our screens. You learn a lot reading those messages when they pop-up on the presenters' screen, both personal and business related. Some even complaints from customers!
My advice to employees and vendors is to sign-out of IM before hosting a webinar. Otherwise, it just might destroy your credibility and possibly your career.5 -
I think I want to quit my first applicantion developer job 6 months in because of just how bad the code and deployment and.. Just everything, is.
I'm a C#/.net developer. Currently I'm working on some asp.net and sql stuff for this company.
We have no code standards. Our project manager is somewhere between useless and determinental. Our clients are unreasonable (its the government, so im a bit stifled on what I can say.) and expect absurd things from us. We have 0 automated tests and before I arrived all our infrastructure wasn't correct to our documentation... And we barely had any documentation to begin with.
The code is another horror story. It's out sourced C# asp.net, js and SQL code.. And to very bad programmers in India, no offense to the good ones, I know you exist. Its all spagheti. And half of it isn't spelled correctly.
We have a single, massive constant class that probably has over 2000 constants, I don't care to count. Our SQL projects are a mess with tons of quick fix scripts to run pre and post publishing. Our folder structure makes no sense (We have root/js and root/js1 to make you cringe.) our javascript is majoritly on the asp.net pages themselves inline, so we don't even have minification most of the time.
It's... God awful. The result of a billion and one quick fixes that nobody documented. The configuration alone has to have the same value put multiple times. And now our senior developer is getting the outsourced department to work on moving every SINGLE NORMAL STRING INTO THE DATABASE. That's right. Rather then putting them into some local resource file or anything sane, our website will now be drawing every single standard string from the database. Our SENIOR DEVELOPER thinks this is a good idea. I don't need to go into detail about how slow this is. Want to do it on boot? Fine. But they do it every time the page loads. It's absurd.
Our sql database design is an absolute atrocity. You have to join several tables together just to get anything done. Half of our SP's are failing all the time because nobody really understands the design. Its gloriously awful its like.. The epitome of failed database designs.
But rather then taking a step back and dealing with all the issues, we keep adding new features and other ones get left in the dust. Hell, we don't even have complete browser support yet. There were things on the website that were still running SILVERLIGHT. In 2019. I don't even know how to feel about it.
I brought up our insane technical debt to our PM who told me that we don't have time to worry about things like technical debt. They also wouldn't spend the time to teach me anything, saying they would rather outsource everything then take the time to teach me. So i did. I learned a huge chunk of it myself.
But calling this a developer job was a sick, twisted joke. All our lives revolve around bugnet. Our work is our BN's. So every issue the client emails about becomes BN's. I haven't developed anything. All I've done is clean up others mess.
Except for the one time they did have me develop something. And I did it right and took my time. And then they told me it took too long, forced me to release before it was ready, even though I had never worked on what I was doing before. And it worked. I did it.
They then told me it likely wouldn't even be used anyway. I wasn't very happy at all.
I then discovered quickly the horrors of wanting to make changes on production. In order to make changes to it, we have to... Get this
Write a huge document explaining why. Not to our management. To the customer. The customer wants us to 'request' to fix our application.
I feel like I am literally against a wall. A huge massive wall. I can't get constent from my PM to fix the shitty code they have as a result of outsourcing. I can't make changes without the customer asking why I would work on something that doesn't add something new for them. And I can't ask for any sort of help, and half of the people I have to ask help from don't even speak english very well so it makes it double hard to understand anything.
But what can I do? If I leave my job it leaves a lasting stain on my record that I am unsure if I can shake off.
... Well, thats my tl;dr rant. Im a junior, so maybe idk what the hell im talking about.rant code application bad project management annoying as hell bad code c++ bad client bad design application development16 -
I fucking hate ppl who transferred from business program into the CS program. They are all talk and no action. Literally this girl who claim to be “good at algorithm” doesn’t even know how to write a quick sort. In the past 2 months I have received more request from business program students to “help debug program” than all of the other departments (science, engineering) combined. Worse, some just straight ask for my code so they can copy off my implementation.
Seriously, it’s okay if you don’t know how to do stuff. But it’s not okay if you don’t want to learn AND feel so fucking entitled. I have a lot of homework as well, it’s not my responsibility to **help** you.8 -
For my job interview, they asked me to write simple Java code to check if the string is palindrome or not! Like sir, I've prepared for advanced quick sort and all algorithms and you ask me this!! 🥺14
-
Quick rant!!
Deadline in 2 days, working with a team.
Me: yo ! , How's the xyz feature? Is it working now?
Teammate: yah, made it work yesterday.
Me: epic! Can you present it to me?
Teammate: wtf, it's not working today!!
Me: no worries, you can sort it out!
Teammate: the latest release you worked on doesn't work properly.
Me: yah, merged code fucked up, I'm fixing that, I'll push a fix today.
And the cycle continues... -
Sometimes I just don't know what to say anymore
I'm working on my engine and I really wanna push high triangle counts. I'm doing a pretty cool technique called visibility rendering and it's great because it kind of balances out some known causes of bad performance on GPUs (namely that pixels are always rasterized in quads, which is especially bad for small triangles)
So then I come across this post https://tellusim.com/compute-raster... which shows some fantastic results and just for the fun of it I implement it. Like not optimized or anything just a quick and dirty toy demo to see what sort of performance I can get
... I just don't know what to say. Using actual hardware accelerated rasterization, which GPUs are literally designed to be good at, I render about 37 million triangles in 3.6 ms. Eh, fine but not great. Then I implement this guys unoptimized(!) software rasterizer and I render the same scene in 0.5 ms?!
IT'S LITERALLY A COMPUTE SHADER. I rasterize the triangles manually IN SOFTWARE and write them out with 64-bit atomic image stores. HOW IS THIS FASTER THAN ACTUAL HARDWARE!???
AND BY LIKE A ORDER OF MAGNITUDE AT THAT???
Like I even tried doing some optimizations like backface cone culling on the meshlets, but doing that makes it slower. HOW. Im rendering 37 million triangles without ANY fancy tricks. No hi-z depth culling which a GPU would normally do. No backface culling which a GPU with normally do. Not even damn clipping of triangles. I render ALL of them ALL the time. At 0.5 ms7 -
(I'll give some context before the rant: I'm part if the IT department of a manufacturing company (actually I'm 1/2 of the department), and all the applications (old an new - except the ones used on production line) used in the company are my responsibility, that including most of databases too... Also, English isn't my native language so there will be some words or phrases that I'll probably write wrong... Sorry for that, if there are any corrections, I'll be glad to hear them)
So...
There will be an implementation of new "control point" on the "shipping department" which consists on a electromechanical equipment controlled by a PLC. And despite the original concept was a collaboration between 2 departments (we, IT, and Production Control), I was never taken in consideration about anything of the project... To be fair, I forget about its existence until two weeks ago.
So, a few days I learned that there are a huge delay regarding the original deadline (mainly because the supplier was delayed with the delivery of their system), and since two weeks (less, actually, because some holydays in between) I'm learning how to integrate that "P.o.S" into an existing application on a PC using a serial communication (not the main problem, as I've done that before... With another brand of PLC's) while avoiding buying any additional software (to get the communication done and in a easy way) and that sort of things... But discovering in the process that it will be necessary to acquire such additional SW in order to finish the job ASAP.
When suddenly I get the "news" that it's almost all my duty (and responsibility) to meet the original deadline, because it doesn't matter how the other departments screw all the schedule, it's the job of IT to get the shit done in time... And what is worst: they didn't said that in such straight manner, no, the implied it while making a quick test with the general manager.
I mean, WTF? Besides doing a "respectable" number of "user support" activities in a dialy basis, I also need to manage the activities of other departments? And also fix their screw ups on a schedule that I just learned days before?
And also there is a coworker (one of whom screwed up) that, almost every time she see me, is asking "how much until you'll finish?"
As I read on a meme years ago: "please, give patience, because if you give strength, I'll need bail money too..."
Damn... I don't know of the benefits of this work are worth all this nonsense -
"Don't go too crazy with the design, this is just quick to get it out, this is a one time deal" - management
Half a year later...
"Well if you would properly design components up front, it wouldn't be so hard to extend the code" - management
Well if there were some sort of god forsaken process in place, with assigned tasks, priorities, iterations, and conventions, maybe everything wouldn't be a last second shit show and there would actually be forward progress on a project instead of throwing shit over the wall and hoping everything lands in the correct places.3 -
If some of you still have problems understanding Quick sort, I've got you covered. This is masterpiece.
https://youtube.com/watch/...2 -
Storytime!
(I just posted this in a shorter form as a comment but wanted to write it as a post too)
TL;DR, smarts are important, but so is how you work.
My first 'real' job was a lucky break in the .com era working tech support. This was pretty high end / professional / well respected and really well paid work.
I've never been a super fast learner, I was HORRIBLE in school. I was not a good student until I was ~40 (and then I loved it, but no longer have the time :( )
At work I really felt like so many folks around me did a better job / knew more than me. And straight up I know that was true. I was competent, but I was not the best by far.
However .... when things got ugly, I got assigned to the big cases. Particularly when I transferred to a group that dealt with some fancy smancy networking equipment.
The reason I was assigned? Engineering (another department) asked I be assigned. Even when it would take me a while to pickup the case and catch up on what was going on, they wanted the super smart tech support guys off the case, and me on it.
At first this was a bit perplexing as this engineering team were some ultra smart guys, custom chip designers, great education, and guys you could almost see were running a mental simulation of the chip as you described what you observed on the network...
What was also amusing was how ego-less these guys seemed to be (I don't pretend to know if they really were). I knew for a fact that recruiting teams tried to recruit some of these guys for years from other companies before they'd jump ship from one company to the next ... and yet when I met them in person it was like some random meeting on the street (there's a whole other story there that I wish I understood more about Indian Americans (many of them) and American engineers treat status / behave).
I eventually figured out that the reason I was assigned / requested was simple:
1. Support management couldn't refuse, in fact several valley managers very much didn't like me / did not want to give me those cases .... but nobody could refuse the almighty ASIC engineers. No joke, ASIC engineers requests were all but handed down on stone tablets and smote any idols you might have.
2. The engineers trusted me. It was that simple.
They liked to read my notes before going into a meeting / high pressure conference call. I could tell from talking to them on the phone (I was remote) if their mental model was seizing up, or if they just wanted more data, and we could have quick and effective conversations before meetings ;)
I always qualified my answers. If I didn't know I said so (this was HUGE) and I would go find out. In fact my notes often included a list of unknowns (I knew they'd ask), and a list of questions I had sent to / pending for the customer.
The super smart tech support guys, they had egos, didn't want to say they didn't know, and they'd send eng down the rabbit hole. Truth be told most of what the smarter than me tech support guy's knew was memorization. I don't want to sound like I'm knocking that because for the most part memorization would quickly solve a good chunk of tech support calls for sure... no question those guys solved problems. I wish I was able to memorize like those guys.
But memorization did NOT help anyone solve off the wall bugs, sort of emergent behavior, recognize patterns (network traffic and bugs all have patterns / smells). Memorization also wouldn't lead you to the right path to finding ANYTHING new / new methods to find things that you don't anticipate.
In fact relying on memorization like some support folks did meant that they often assumed that if bit 1 was on... they couldn't imagine what would happen if that didn't work, even if they saw a problem where ... bro obviously bit 1 is on but that thing ain't happening, that means A, B, C.
Being careful, asking questions, making lists of what you know / don't know, iterating LOGICALLY (for the love of god change one thing at a time). That's how you solved big problems I found.
Sometimes your skills aren't super smarts, super flashy code, sometimes, knowing every method off the top of your head, sometimes you can excel just being more careful, thinking different.4 -
Just a quick rant on JavaScript,
So there’s a lot of people hating javascript, and while not a long time ago i was part of them, but I changed my opinion a little.
I think JavaScript is a great way to deal with website programming as it is quick and efficient, but I would not say to program directly on it, use a js-compilable language (CoffeScript, TypeScript, Kotlin(I think), etc.), but then you might say: “Well, no need for js then, compile it in byte code”. That would break the point of how I see web design/dev. The main intent behind webpages is to have an easy and fast way to send code to other computers to render them, that’s why it is interpreted: “Easy to send” and “*All* computers can handle it” with the proper browser. You need to be able to change the way the website is rendered and/or works sometimes, for diverse reasons like copy/pasting data, make it render properly or use plugins/add-ons to change that code to suit your needs.
I think js should be kept as a “readable byte-code”, so that means: {
Keep comments when compiling the js-compilable code,
Add standardized machine-readable comments that will indicate to smart code viewers how to show a particular thing (Like have a higher-end function compiled in js shown as a minimized code with explanations of the function)
Keep it nicely formated and don’t obfuscate (coz that’s annoying)
Etc.
}
So you bypass the quirks and all that pesky js stuff, while keeping it’s good sides.
-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-
Part 2:
Web design for non-web:
Ok so things like node.js, electron, react-native and all that stuff; I won’t say they’re bad but...
Why we have this is because web designers wanted to make desktop apps and were like “Hey! Making web pages is easy! Let’s port it to desktop”, the problem is: Web technologies were made to work on a restricted canvas, aka a browser. It’s good on web for reasons mention earlier and more. But it’s not on desktop! You’re trying to push it outside of those boundaries. It’s difficult to make it break that canvas and go outside, make something that really works! For social media clients and that kind of stuff that you want to make a little more inclusive, yes! it’s a great idea (hello devrantron ;), but not if it’s an exact same copy of the website, just use the website. But for things that are supposed to really make use of YOUR computer; no!
I see those PWA (progressive webapps aka mobile app, but it’s an offline website”), I stand for the same positions, social media and those sort of things: yes, great idea! Games? 🤢.
I have way more to say but I have difficulties to remember them while reading, so feel free to comment your thoughts
Lol, “just a quick rant”1 -
bubble sort
promotion sort
quick sort
school sort
heap sort
hr sort
merge sort
sex sort
selection sort5 -
Over the summer I was recruited to be a supplement instructor for a data structures course. As a result of that I was asked (separately by the professor) to be a grader for the course. Because of pay limitations I've mostly been grading homework project assignments. In any case, it's a great job to get my foot into the department and get recognized.
Over the course of the semester I've had this one person, OSX, named after their operating system of choice, who has been giving me awkward submissions. On the first assignment they asked the professor for extra time for some reason or the other, and that's perfectly fine.
So I finally receive OSX's submission, and it's a .py file as per course of the course. So I pop up a terminal in the working directory and type "python OSX_hw1.py". Get some error spit out about the file not being the right encoding. I know that I can tell python to read it in a different encoding, so I open it up in a text editor. To my surprise it's totally not a text file, but rather a .zip file!
I've seen weirder things done before, so no big deal. I rename the file extension, and open it up to extract the files when I see that there's no python files. "Okay, what's goin on here OSX..." I think to myself.
Poking around in the files it appears to be some sort of meta-data. To what, I had no clue, but what I did find was picture files containing what appeared to be some auto-generated screenshots of incomplete code. Since I'm one to give people the benefit of doubt even when they've long exhausted other peoples', I thought that it must be some fluke, and emailed OSX along with the professor detailing my issue.
I got back a rather standard reply, one of which was so un-notable I could not remember it if my life depended on it. However, that also meant I didn't have to worry about that anymore. Which when you're juggling 50 bazillion things is quite a relief. Tragically, this relief was short lived with the introduction of assignment 2.
Assignment 2 comes around, and I get the same type of submission from OSX. At this time I also notice that all their submissions are *very* close to the due time of 11:59pm (which I don't care about as long as it's in before people start waking up the next morning). I email OSX and the professor again, and receive a similar response. I also get an email from OSX worried about points being deducted. I reply, "No issue. You know what's wrong. Go and submit the right file on $CentralGradingCenter. Just submit over your old assignment".
To my frustration OSX claimed to not know how to do this. I write up a quick response explaining the process, and email it. In response OSX then asks if I can show them if they comes to my supplemental lesson. I tell OSX that if they are the only person, sure, otherwise no because it would not be a fair use of time to the other students.
OSX ends up showing up before anyone else, so I guide them through the process. It's pretty easy, so I'm surprised that they were having issues. Another person then shows up, so I go through relevant material and ask them if they have any questions about recent material in class. That said, afterwards OSX was being somewhat awkward and pushy trying to shake my hand a lot to the point of making me uncomfortable and telling them that there's no reason to be so formal.
Despite that chat, I still did not see a resubmission of either of those two assignments, and assignment 3 began to show it's head. Obviously, this time, as one might expect after all those conversations, I get another broken submission in the same format. Finally pissed off, I document exactly how everything looks on my end, how the file fails to run, how it's actually a zip file, etc, all with screenshots. That then gets emailed to the professor and OSX.
In response, I get an email from OSX panicking asking me how to submit it right, etc, etc. However, they also removed the professor from the CC field. In response I state that I do not know how to use whatever editor they are using, and that they should refer to the documentation in order to get a proper runnable file. I also re-CC the professor, making sure OSX's email to me is included in my reply.
OSX then shows up for one of my lessons, and since no one had shown up yet, I reiterate through what I had sent in the email. OSX's response was astonished that they could ever screw up that bad, but also admits that they had yet to install python(!!!). Obviously, the next thing that comes from my mouth is asking OSX how they write their code. Their response was that they use a website that lets them run python code.
At this point I'm honestly baffled and explain that a lot of websites like those can have limitations which might make code run differently then it should (maybe it's a simple interpreter written on JavaScript, or maybe it is real python, but how are you supposed to do file I/O?) .
After that I finally get a submission for assignment 1! -
Sort of follow up to: https://devrant.com/rants/1351833/...
Now I can turn on/off my PC over the Internet. A little hacky but it works like a charm.
I'm using an Arduino IDE compatible ESP-12E with on board WiFi and a homemade optocoupler (LED + photoresistor).
Hopefully more projects like these are coming 🤗4 -
I want to learn C++. I know C#, Java and Ruby. Should I go Directly, or there is some sort of path?
How long it takes to master it? I am a quick learner, I catch things a lot faster.
What impact it has on my skills?
Is it really a nightmare to learn?8 -
This story just left me speechless in any way and i want to share it. tl;dr at the end.
Im studying computer science in germany and in the first of the small classes i noticed... no, i was disturbed by a guy who would just say that the thing we're learning atm were so easy and the teacher shouldn't even bother to explain it to the class. I don't understand why you would spoile a class that hard... I'm here to learn and listen to the teacher, not to you little asshole. (We were doing basic stuff like binary system etc. but still, let us learn)
So he became unpopular pretty fast.
Fast forward, a few weeks of studying later there was a coding competition where you had to solve different algorithmic problems in a team as fast as possible.
I came there, without a team because my friends aren't interested but I enjoy such tournaments. This guy and me were the only ones without a team and we had to work together.
After him being a total dick for hours i had to watch him code a simple for-loop, that iterates through a sorted array. Nothing special, at this point anyone could do that task in our class so it shouldn't be a problem for him.
He made a simple for-loop and it worked fine, but we figured we had to iterate through the array the other way around.
'Alright', I think. 'Just let the index decr..' 'Pssshhh', he interrupted me and said he knows exactly how to do this.
I was quite impressed when he started to type in 'public int backsort..' in a new line. He tried to resort the array backwards with a quicksort that he then struggled to implement. (Of course we had to implement a quick runtime and we needed that quicksort badly)
I was kind of annoyed but impressed at the same time. I mumbled 'Java has an internal sorting algorithm already' just to amuse myself.
He then used that implementation.
After a few minutes of my pleasure and multiple tests without hitting the requested runtime, i tried to explain to him why we wouldn't need to sort that array backwards and he just couldn't believe it.
I hope that he stays more humble after that..
Also we became last place but thats ok :)
tl;dr: Guy spoiles whole class, brags with his untouchable knowledge (when we do things like binary system). In a competition has to iterate through a sorted array backwards - tries to implement a sorting algorithm to sort it backwards first. I tell him, we could use a already implemented java method. Then tell him we could simply iterate through decreasing the index. Mind-Blown2 -
I can't recall one single person I can call a mentor, however...
When I first started as a developer I had a senior to work with... I knew close to anything but I was always good at research and learning on my own... But we used an asp.net framework, it was new and there was little to no useful information, only basics... When I asked the senior (let's call him Joe) for help he gave me a quick answer:
Joe: Go to file xx, there's an example of what you need there...
Me: Well, been there and that's great but it doesn't help...
Everytime I was stucked during my first week it was always some sort of the same, so I insisted this time...
Me: so, Joe... I'm really stuck on this one, can you give it a look?
Joe: I know, I've been researching a way to do it for an hour now and can't get it either...
Me: wow! Thanks... But I thought you were an expert on this...
Joe: not really, never used it before. It's as new to me as it is to you! :)
So, that switched me from "this fucking weasel won't help me for shit" to "well, let's help each other"
We became good friends, always challenging each other and from that day on I stopped asking for help, and asking where can I help others...
I had great and greatly bad colleague and seniors. Each one thought me something either what to do or what not to do, how to act or not, how to tackle problems, how to teach...
Everyone I have worked with, worked for or trained is a mentor of mine. Even those I feel like I failed training thought me how to do better next time...
Thank you guys for being grate... Thank you assholes for teaching me how to send a guy go fuck himself! Good luck for those who get stucked with me -
https://youtu.be/ywWBy6J5gz8
Lol, now I know how quick sort is done for sure.
Quick sort with Hungarian folk dance.1 -
!dev
Through life, I've heard some people say horror movies are bad, that they promote violence (usually religious people).
Of course I think that's pure bs, but I think I could provide one argument that is hard to deny, so here it goes, although I might go off rails at the end.
I'll preface with this: life itself is violent. Violence, the word, is mostly used to describe immoral inflictions of harm on other beings.
But you can also say that some deaths are violent by themselves too, event those that weren't caused by humans, like a disease or a natural disaster.
This would be the "visual" meaning of the word, "the way it looks", the shock of humans when observing something gruesome/violent.
That described, it's not hard to also think that technological advancements in modern western life has made such observations of violence very unfrequent for people.
And naturally, modern people get accustomed to the lack of these observations. So accustomed that when they happen they become traumatic.
Because of this, people react weirdly to death. One reaction is censoring the topic. Another reaction is trivializing it, as if it doesn't really matter.
Sometimes they can't even accept old people dying at 90, an awfully stupid reaction in my opinion.
Another interesting reaction is personifying diseases as if they were villains ruining lives intentionally.
Or at least that's what it feels until you look at them through a microscope and realize that diseases aren't more evil than bread changing flavour after toasting.
All of these irrationality and cowardice comes from low exposure to violence, and that's where horror movies balance things out.
Some diseases in the real life can put some of the worst horror movies to shame.
The human body itself is pending violence. Why? Because when you die all sort of worms eat your fucking flesh. And sometimes that happens even before you die.
We bury humans because of the diseases corpses transmit, but also because we don't like the spectacle and the aesthetics of the rotting process.
Just picture for a second bad things happening to your body, and if you feel that is making you too uncomfortable, then maybe you got too used to this too.
I think horror movies help us to remember the reality of our inminent and intrinsic violence.
In ancient times, you would live outdoors, stepping on dirt, and be very used to "bad" things happening to humans.
Nowadays, most homes are sterile clean, and it's unlikely to observe violence.
Oh, some family member is pucking blood and dying from something? Send em to a hospital, or an elderly care center. Don't need to witness that!
I understand and accept grief. What I don't understand or accept is the vilification of death, describing it as something wrong that shouldn't happen.
it almost feels like a burden, like you shouldn't die when you're young, that it's an unforgivable thing to happen.
Well thanks, society, you can't even fucking die in peace.
I would love to die (no suicide) in a mildly celebratory way, watching people around me smile. I think that would be a good ending for me.
But no. Most of my relatives would be fucking crying like the chickenshits they are, ruining it for me.
And that scares the shit out me: people usually say the scary part of dying is that they die alone.
Well that's what dying alone would mean to me: watching people cry instead of smiling at me.
When my grandma died at 80, with all the achievements she made, I considered her death a success, also considering how quick it was. And because of that I didn't mourn for too long.
In fact, I don't even consider her dead, and not because of some religious mumbo jumbo. I guess the memories are still alive in me, I don't know.
Some famous chunk of coal said once that he felt people don't believe they're gonna die. And I agree with him.
Another upside of horror movies is that they hurt nobody, which is why you can enjoy it and not get ptsd, unlink watching a snuff film.
I will also be fair and add that this might a be a cultural thing, but deep down desire for survival is a genetic thing could play a big part in this too.4 -
I used to work for a consultancy that specialised in a very niche area (I won't say what – this is traceable enough already!). We charged our clients a very high hourly rate, because demand and supply. All the time I'd get calls like the following:
"Please could you just make this small change to the deployment?"
"Yes, of course. You don't have any contract hours left, so I'll just forward you to our billing department so you can sort out the payment first"
"Ah okay, please can you tell us how to do it"
[Even if I explained it, you wouldn't be able to do it – that's why you're coming to us.]
"...or better yet, just do it as a quick fix outside of work?"
[So... work for no pay? No thanks.]
While my company always had my back on these requests (obviously, they wanted payment too), they were so frequent that I got sick of it.1 -
Question: is it common for lead software engineers to mostly do paperwork or is that just a quick of my current program?
Where I work it is very common for those titled "software leads" to be almost completely hands off the software. They deal in hiring, fielding user comments and commitments, and scheduling. I would like to be a lead but I was always under the assumption that dev leads had more of a design and/or architect role. Sort of a big picture thing rather than middle management which is what this feels like. -
I am this shitty ass frontend dev that knows one language and one framework, I only do light logic and I can't even do a quick sort algorithm.9
-
Just received an email from a high maintenance client - this is verbatim what I've just read:
"If I could pull out my Windows vista and then plug in a newer windows system without any stress I'd go for this. Do you do this service? I could pay you for an hour to come my business, Unplug, Plug in and sort this out etc etc. It sounds like a quick job to me."
Note I'm a software developer, nothing to do with day to day IT support stuff. The client's business property is a 45 min drive from my own.
So basically, according to my client I can charge a single hour (£85.00 +vat) for a 90 minutes round trip, to migrate their PC to a newer operating system and move all their data and apps over and then setup the new OS. All for £85.00 +vat. All excluding the fact I
What the literal heck. I'm face palming all over the place.5 -
How do you guys deal with interruptions / task-switching while you're deep into something?
Generally I don't mind quick interruptions if someone needs help with a shell command or a library, or some other quick ask.
But I had four full new priority tasks/tickets come my way yesterday, and for each one I had to pop open a separate workspace and juggle a separate conversation.
It's not the end of the world, but whenever I'm forced to juggle multiple tasks, I find I end up frozen and frazzled while I try to recalculate my priorities.
This is partially my fault, since I've sort of situated myself as the devops guy for a few systems, so I get regular tickets as well as systems/data tasks.
Any tips? Preferably I'd still receive the tasks, but just deal with them better.2 -
So, what are your most favorite methods of saving interesting articles about algorithms, functions or simply news so you can read them later when you have time? I find myself storing links to interesting web pages without really going back to them or remembering which link was what. I shifted to storing the links in evernote but it's still not what I'd ideally like to have...
If there are any recommended routines, apps or tools that make stored links insightful (like allowing me to add a quick description or automatically adding a sort of preview of the link), I would appreciate it!
Please note that this is primarily about saving a resource while I'm on the go or simply can't/don't want to spend too much time on the actions.17 -
There was this one time when we've managed to upload a Debug build to Google Play Store.
On the same day we had to create a new build w/ fixes, have the testers perform smoke tests, then switch to some fairly quick overall tests.
If nothing were to come up during those tests, the build was supposed to be passed over to the submission manager for release.
Things weren't going that smoothly in the beginning, w/ the first two builds being broken in one way or another.
Finally, however, we managed to create a properly working build.
QA hadn't had that much time to test it, but no major problems were identified && given the deadline we had to submit it.
The next workday it turned out that the tester responsible for passing the approved build over to the submission manager gave him the Debug build.
The submission manager none the wiser uploaded that build for release.
Result?
The users who managed to update their game got their save data wiped... sort of.
It looked that way given the Debug build was communicating w/ a different server.
In the aftermath of that situation, we had to repair the damage && upload the correct build as quickly as possible.
Also, ever since then a huge text 'DEBUG' was added to the loading screens of Debug builds to make people very aware of which build they were looking at.
As for any repercussions for the tester responsible for the mess, or the submission manager - I have no idea.
They were both still working there, so at the very least none of them got fired because of this. -
(imagine all of this said in Undoomed's "hey moron" tone)
Hey, moron, fuckin moron! How about if you're a noob with no actual programmer on your side, you just tell me so we can work it out together, instead of sending a moronic 4page "acceptance criteria" that pretend you know what you're talking about, and then bury me under loads of moronic noob questions that reveal you as thenmoron you are, all of that for a fuckin 50 quid?! I thought it's me being an idiot, not being able to do the task within two days timeframe, but now I see you're just too much of a moron to have any idea how much these things take. And now you nonchalantly mention a one-line one point from the four page document full of drivel, which (loads of moronism credit for me here) i didn't notice amongst all of that other mundane drivel, which actually like doubles the whole workload on the task, but your moronic document, which makes 3 parts of the same algorithm into three separate MILESTONES, makes this whole thing that nearly DOUBLES the workload into a shitty SEVENTH SUBPOINT of the completely unrelated first "milestone"?
FUCK YOU, YOU STUPID ROBBERY CHEAPFUCK, and fuck me for letting myself be tricked by all your fancy wordings that pretend you actually know what the fuck you are asking for, so i assumed you did, so I missed THE POINT, WHICH ACCORDING TO THE SEGMENTATION LOGIC OF THE WHOLE REST OF THE DOCUMENT SHOULD BE 3 SEPARATE FULL-SIZED MILESTONES, NOT A SINGLE SUBPOINT, YOU FUCKING FUCK!
... so much for still trying to at least a bit trust people.
FUCKING DISGUSTING MORONIC CHEAPSKATE FUCK.
and I can't even tell him to fuck off through the rectum he came here because he's all nice and polite so I would be the asshole!
"hey, please, can you build me a house?"
*house is basically finished*
"oh, great job, i love it, but i think you might have missed the fineprint in our contract that says that the house is supposed to stand inside an entry hall of a multibillionaire-sized mansion, so could we please sort that out and add it to the building real quick before i pay you the toolshed's worth we agreed on based on the contract? "
FUCK. HIM.
FUCK
FUCKFUCKFUCKSHITFUCKERYFUCKDISGUSTINGIDIOTICFUCKINGFUUUUUUUUCK!!!!!!
i thought i can be a shitty liar and a con man, but this is some next level shit that would be totally beyond my abilities to pull off...
YES I KNOW IT'S MY FAULT I DIDN'T COMB THROUGH THAT BULLSIT "SPECS" OF HIS LETTER BY LETTER TO MAKE SURE THERE'S NO CON BULLSHIT LIKE THIS HIDDEN AMONGST ALL OF THAT MUNDANE SELF-EVIDENT PSEUDO-TECHNICAL DRIVEL, SHUT THE FUCK UP.
fucking disgusting moron, pretending all nice and innocent probably even to himself because he HAS NO FUCKING IDEA WHAT HE EVEN ASKS FOR.
i bet it's one of those pukefucks who get an overpriced contract for 50k without even knowing or caring what programming is, because "i'll just outsource the core functionality of the app for 50 quid to some naiive idiot who lives in the illusion that people are not diarrhorea-worthy pieces of feces, and this other third of the app to some other moron for hundred quid and then i somehow outsource gluing it together to some third poor sod, and that's 49.8k quid of pure profit for me, yay"
and now i'm torn between three options, just cancelling the "contract" with a comment saying "fuck off, you con man", or cancelling it with a lengthy explanation why he's a know-nothing piece of shit who conned me already into having done something worth about 5x more than his shitty "acceptance criteria" requests, or just start conning and bulshitting him back, which won't net me any money, and waste my time, but at least will also waste HIS time, which might be nice because he seems to be on a tight schedule so if i play this right i might have the chance to sink his whole contract which might be mighty nice satisfying...
FUCK THIS, ALL OF THIS, FUCK HIM, FUCK ME, FUCK ALL OF YOU, I SHOULD HAVE STARTED FUCKING OVER EVERYONE RUTHLESSLY A LONG TIME AGO BECAUSE FUCK THE WHOLE WORLD, WHY SHOULD I CARE WHEN NOBODY ELSE DOES, WHY SHOULD I BE DECENT WHEN NOBODY ELSE IS, AND IT ONLY ROYALLY BITES ME IN THE ASS.
stupid fucking lobotomized fuck, IF YOU DON'T KNOW HOW TO DO SOMETHING, DON'T OFFER YOURSELF TO DO IT FOR MONEY AND THEN CON-SOURCE IT TO OTHERS YOU SHITTY BARFPILE!
FUCK. -
Heyyy DevRant Fam! :D, hope everyone is doing very well today! i would love to get some input/advice from my fellow developer friends here today... so Milo has gotten himself into a sticky situation... So recently i had a little opportunity to get some mentor-ship or internship through a family friend, and im sooo excited but nervous at the same time.. i sometimes think to myself am i really 'good enough for such a position'?? but however since I've never really experienced this sort of work, whats their to lose? or is this a bad way too think about it? :D
so ladies and gents, I'm really interested in the stock market and that sort of finance, and i think id be a good fit to build tools for traders, if i cannot get into that sort of position, why not work back office and have more of a support role? I'm always very happy to work my way up as I'm highly motivated!, however in the case that i manage to get into such a position, I'd love to know, what sort of things do i need know to be able to land such a position? if you can give me any tips or advice id be extremely grateful! :D
If you have managed to get this far into my post, I'd love to say thank you so much! and i really apologize for rambling on... i generally always do that.... and also i want to say thank you so much for taking the time to read my question <3 really means a lot to me!
just quick note letting everyone know as a hobby project I'm building a little list app where i can save my favorite stock tickers/symbols into a list and see the price changes over time (through alphavantage's API) :D
Kind regards,
Milo <3 :-) -
having a DSA interview in 2 days, any suggestions on how/what to prepare?
its been years since i tried solving coding problems with anything apart from strings or arrays( and that too the one we use in dev, like writing a function to convert string to uppercase, that's all i remember)
There are a million algorithms: knapsac, djikstra, DFS BFS, bellman ford, TRIE, BST, quick sort, merge sort, insertion , binary search... these are some buzz words i could remember from my early college days, 6 years ago. I was able to understand and learn them at that time, but now i know shit about them :/
How to go with all of these in 48 hours?6 -
Does anyone have a handy macro sort of quick automation windows desktop tool they use / like?
Scenario: I fix a rando thing on a rando web app. Now I need to go through 4 clicks in a browser and enter some text to make the thing happen and see the result....I'd rather not do that 8 times as I iterate / try stuff.
I've been playing with some more automated testing stuff but I'm not there yet and the granularity of those tends not to be in the area of "make quick task and watch it happen" kinda thing.4 -
I think here the CS degree/experience just gives you training basically to pass this technical interviews which has been a constant problem because 99% of the work you actually do, you ain't gonna need it. (I don't work at big tech companies but pretty sure it's the same, have to be very Senior and leading a project before you really need to think about this stuff?)
I don't have a CS degree unfortunately, completely self taught, but that experience while "impressive" to interviewers doesn't seem to matter much when do how do you implement a red black tree or quick-sort.
I may know the difference in general but I don't fucking care to remember the details as YAGNI... If rather remember the things I need every day -
Can your web app do this? create read update delete search sort filter copy paste.
Similar to that, here is a quick acceptance test which every business system I can think of fails- Find Records Created By Me. Maybe in JIRA it works but none of my work’s 3 or 4 systems that come to mind can do it. To be clear, even my product I code at work cannot do these things in a practical sense.1 -
Quick question. I'm currently working on a project that requires extensive activity logging. What do you recommend for some sort of monitoring and logging of user access on a Linux box?
Big thanks in advance. <34