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 - "geeksforgeeks"
-
(Interview for sde-3 position)
(continuation of https://devrant.com/rants/2132431/... )
Interviewer - *opens laptop. Gives a question.* solve this.
Me - *a bit surprised that such questions were being asked on a sde-3 level*
this is the 4th or 5th question from geeksforgeeks, isn't it? I know the answer to this. Do u still want me to solve it?
Interviewer - *not believing me* Yes
Me - okay. Well this *writing down the original solution mentioned on the site* is the verbatim code mentioned on the website, with complexity O(n^2).
However I feel this is not the optimal solution. Let me write a better solution.
*I provide a better solution*
This has a complexity of O(n log n) . What do you think?
Interviewer - Nope. This could be a lot better.
Me - okay. Let me see. Did some minor changes, added some caching (obviously this will have no effect on the base algorithm) etc
How about now?
Interviewer - nope. Still not good.
Me - okay. Can you tell me how to improve it?
Interviewer - no we are not allowed to solve problems for you. It is not our interview, it is yours.
Me - that makes no sense. Interviews are a two way street. I'd very much like to know the optimal answer to this.
Interviewer - okay
*copies down the answer from geeksforgeeks*
This is good
Me - *at first I thought this was a prank or something. *
I just mentioned this answer here.
Then I spent the next 10 minutes providing a BETTER solution.
May I know how yours is better?
Interviewer - this solution has 2-3 loops. Yours has a function calling itself.
Me - that's called divide and conquer using recursion mf!
Anyways let's take an example and do a dry run.
Interviewer - okay
*we do dry run*
Interviewer - oh yes. Yours ran faster. But it will run fast only sometimes.
Me - yes. Each time the algorithm rolls a dice to decide if it should run fast or slow. You have one goddamn awesome weed dealer man.
I got to go. Thank you for meeting me.14 -
I fucking hate the fact that every tech company now needs for devs to be up-to-date with geeksforgeeks or leetcode to pass their interview.
Is there no other way to confirm that a Dev is legit?7 -
Geeksforgeeks is fucking trash. Fuck the creator of the site. I don't want to sign up just to be able to browse the site. Even if I disable this horrible modal, JavaScript still detects scrolling and scrolls back.
Fuck you. Fuck the people who create "features" like this.3 -
Another GeeksForGeeks rant
Wisecrack got me a bit interested in primes (just a passing interest). I looked up their python implementation of "Sieve of Atkin". Wow, is it bad.
First of all, they use PascalCase instead of underscore_natation so that's points off right there.
Their function takes a limit as a parameter (pretty obviously).
Their program breaks if you pass a prime number as a limit. That's right, if you give it a 2, it breaks. Pretty pathetic.
Reading the comments, their Java implementation is wrong too.
For fucks sake guys, if you're going to have an algorithm blog at least write good algorithms.6 -
I had been assigned a task to create a cross-platform desktop application that keeps track of the expiry of a certain product and notify in real-time.
So, my journey to create such an application starts today and the list below describes the first few hours.
1. Google/Date and time in javascript
2. Google/Javascript date object
3. W3school/Time in javascript
4. W3school/Javascript date getTime() method
5. Google/Are electron.js applications platform independent
6. Google/Dart for desktop applications
7. Google/Is dart cross-platform
8. Google/Best desktop application framework
9. Google/Python for desktop app development
10. Freecodecamp/How to build your first desktop application in python
11. Google/Pyqt
12. Google/Which is the best technology to build cross-platform desktop application
13. Google/Cross-platform desktop app development for windows mac and linux
14. Udemy / cross platform desktop app development for windows mac and linux
15. Youtube/ electron desktop app, demo
16. Youtube/ electron.js is obsolete
17. Youtube/Neutralinojs
18. Youtube/ neutralinojs tutorial
19. Google/Neutralinojs or electronjs
20. Google/Math.js
21. Google/Math.js/JS Bin
22. Google/Cannot find package “math.js”
23. StackOverFlow/How do I resolve “cannot find module” error using Node.js
24. Google/ is it better to install npm packages locally
25. Quora/ why should you stop installing NPM packages globally
26. Google/ what is nvm
27. Google/nvm version check
28. Stackoverflow/node version management on windows
29. Github/coreybutler/nvm-windows: a nvm for windows. Ironically written in Go
30. Google/how to uninstall a npm package
31. Npm docs/uninstalling packages and dependencies
32. Google/require in javascript
33. Youtube/how to install electronjs
34. Youtube/electronjs in 100s(fireship.io)
35. Roryok.com/electronjs memory usage compared to other cross-platform frameworks
36. Google/is electronjs memory hungry
37. Youtube/sql in one hour
38. Youtube/learn sql in 60 mins
39. Geeksforgeeks/connect mysql with node app
40. Stackoverflow/How to return to previous directory using cmd
41. Stackoverflow/how to require using const
42. Geeksforgeeks/difference between require and es6 import and export
TO BE CONTINUED...1 -
For learning there are a lot of sites are available. But I was not comfortable with hackerrank or geeksforgeeks etc. Finally I found a website edabit.com that was totally free. It is amazing site and it helps me a lot for understanding JS method like map, filter etc. Now I have started solving hard problems too :)1
-
I learnt things by myself using websites like w3schools or geeksforgeeks and by making random useless things and i feel like that's how learning how to code should be like? My college made me forget why I loved coding in the first place, which was my creative freedom in it, making things I love, making things I would use. I don't care about what outcome comes out of it, I just like making things by my own volition.
I hate how coding is taught in academics. I don't know how it is in the US or other countries, but in India it just feels so irritating and boring, I feel like they should make things more hands on and out of the box rather than making us sit in class for 10 hours and give us 2 hour labs which are useless. If you're going to have a CS F111 course at least make sure it's inclusive of all the students you have? I worked my ass off to get into a really 'prestigious' college only to be disappointed by a vast array of professors who absolutely don't give a shit about teaching. They're brilliant researchers don't get me wrong, thousands of papers to their names, hundreds of citations, but when it comes to teaching it feels like they think of us as burdens? I dunno, this entire semester I felt so depressed, expecting more out of this course. I'm not a developer guru, I'm far from it, but I still feel like even if you're teaching the bare basics you can include things for people who already know this stuff? Instead of create an obvious unfair advantage for people like me who've been doing this for way longer than others.
I feel like evaluation should be made on progress rather than how much of the syllabus you can memorise. From this point, to that point, how much progress did you make. I feel like instead of evaluative components being MCQs or fill in the blanks they should be projects, how well did you code this project, how well did you document it. Create your own project! It'll take time to evaluate yes but it's not like you don't have that time, it's a genuine investment to not just make this a read and repeat course.
Thanks for reading my rant