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 - "datastructures"
-
Christmas.
The only time where computer scientists and other people agree how trees are shaped.
Now we only need to convince them that the tip is in fact the root.2 -
One of the most infuriating ideas in software development culture is that you can build maintainable applications without a strictly enforced type system and structured data.
Sure, it's more fun to wack around a dynamically typed system until it works or to write a major application with mutable datastructures... It's a least fun until a few years in and you have to debug an unexpected overwrite or a inconsistent use of an object property or whatever.
Anyone who writes maintainable code eventually figures out that you need rules and procedures, the issue with JavaScript, python, ruby, lisp, etc developers is that they think it's us developers that needs to enforce these rules instead of the compiler (which is infinitely better at it).60 -
And there you go...\(◎o◎)/rant linkedin amarite joke/meme algorithms what? what the fuck datastructures wtf? linkedin linkedin is shit3
-
First year: intro to programming, basic data structures and algos, parallel programming, databases and a project to finish it. Homework should be kept track of via some version control. Should also be some calculus and linear algebra.
Second year:
Introduce more complex subjects such as programming paradigms, compilers and language theory, low level programming + logic design + basic processor design, logic for system verification, statistics and graph theory. Should also be a project with a company.
Year three:
Advanced algos, datastructures and algorithm analysis. Intro to Computer and data security. Optional courses in graphics programming, machine learning, compilers and automata, embedded systems etc. ends with a big project that goes in depth into a CS subject, not a regular software project in java basically.4 -
I was talking to my non-tech gf about how a colleague of mine didn't understand priority queue and show led her an example, during explanation fucked up the example and duplicated priorities of 2 values but they came up in the unexpected order. She wanted to find the logic in it and blamed the computer for being dumb, but it has been ~45 minutes, she has Wikipedia about binary trees & linked list open as well as simple graphs visualising both + armed with pen and paper trying to understand how it all all works..
Achievement Earned?
P.S I am either creating a monstrosity (Frankenstein style) or recruiting a fresh mind to our ranks, either way I am proud af 😢😊😍8 -
Unpopular opinion.
TOML sucks
* it does not claim to care about indentation but it actually does
* nested datastructures are a nightmare, especially 'inline' for 'readability'
* oh fuck me everything must be "double quotes"
* booleans always lowercase, there is no "truthy" here.
* Tables are not intuitive at all.
And all this from working with it first time because I had the silly idea to modernize a python project to use pyproject.toml
Oh and don't get me started on pyproject.toml files. The documentation sucks!6 -
I hate the fact that our university is hiring ex-developers from the year 1990-2000 to teach us. They are knowledgeable about many stuff like datastructures and algorithms, but when they force a project on us where we have to use some new tech, the students become the teachers. Heck, one of the requirements of the project was to set up a continuous integration server and we had to explain to them that we needed a server and how git was part of it. (classmate even had to explain how git worked to them).
I know that adapting and learning stuff yourself is part of the education, but why are we the ones who should explain the stuff we MUST know to get our degree to the teachers who are supposed to actually, in my opinon, be experts and knowledgable in what we have to know and learn..2 -
What container data structures do all of you actually use?
For me, I'd say: dynamically sized array, hashtable, and hash set. (And string if you count that.)
In the past 8 months, I've used another container type maybe once?
Meanwhile, I remember in school, we had all these classes on all these fancy data structures, I havent seen most of them since.19 -
Want to impress people. Create a number guessing game using the "binary search algorithm" and your program will be able to guess any number in a range of 10000 in 14 trys or less or 1 billion in 30.3
-
Hey guys and girls, quick question.
Im currently writing my own collection-framework in Go.
It has a Collection-Interface, that looks like this:
Clear()
Size() int
ToSlice() []interface{}
Add(...interface{}) error
Remove(...interface{}) error
Contains(...interface{}) (bool, error)
The library should also contains stuff like stacks and queues, so datastructures, that dont fit that interface perfectly.
So should i write a weird implementation of the interface for them, like Remove for stacks (high pitched internal screaming), or should i just say fuck it, and dont implement the Collection-Interface for these specific types ?3 -
Let's focus/master computer architectures, coding paradigms, datastructures. Everything comes after that...the problem with todays academics is that they are more focused on immediately deploying students to industry; theyre more focused on teaching specific frameworks and specific language instead of teaching how things work...i bet most students (at least in my country) are having troubles with endianess or encoding or even byte manipulation or what a thread is....If im going to be the teacher for example of an oop subject, ill let the student choose the language they want as long as the oop paradigm is intact ,it will be fine.. i dont friggin care whether you know vue or angular or swing if you dont even know what a callback is..
-
Have you ever seen a tree data structure implementation in any code base?
I wonder why recruiters are so desperately asking how to invert binary trees in my coding interviews🥴4 -
I know how to code. I am good at coding, algorithms, datastructures. I have also been using linux since 4 years.
But still I am not a programmer. I work on excel in office.1 -
I just learned C and I have created some projects like Parking System and Library Management System. My problem is I don't know mathematics and I want to learn DataStructures & Algorithms and become pro in it. In the whole September I will still be focusing on C and create more projects. I have started learning Mathematics today from High School level to College level. I thik maths will take 1 year to complete. After September in the October I want to start learning C++ and finish C++ till the end of Dec 2019. I want to know that do I have to first finish my maths learning which will take 1 year then I should start learning Data Structures and Algorithms? As I said I want to become a professional in Algorithms. I think its not possible to learn DS&A yet I have to wait 1 year till I finish learning my Maths. I can't do more with C & C++ without knwoing DS&A? If I started learning DS&A with C++ in the future then I can't become good at algorithms? I want to do competitive programming and be at Top 1 of Hacker Rank and other sites like this.7
-
It's a shame that people don't want to use F# but prise C# for how cool it became and continue becoming. At the same time, little do they know that many of the features were simply drawn from F#.
It's just rediculous how far this OO and C-Style syntax crap has progressed. They keep copying things from functional langugages, making the initial language to be a monstrocity like C++ is now, insted of just using languages like C#. I mean, it was right there before C#: async/task, immutablility, records, indexes, lambdas, non-null by default, who the hell knows what else.
Besides, many people (in my company at least) are just blindly overengineering with patterns and shit, where a simple function would be just enogh.
Watch some some NDC talks about F#, in particular those of Scott Wlaschin. It's just better in so many ways: less noice (I'm looking at you, brackets, commas and semicolons), the whole LOT of type inference and less duplication (just look at the C# signatures of linq methods - it's difficult to read them), immutability by default, non-nullable by default, ADTs and pattern matching, some neat features like type providers (how many times have used "paste special" or an online tool to create C# classes from a JSON/XML file, and how many times have your regenrated it because of schema changes?) and units of measure.
Of course, in some cases it's not optimal, in some cases mutable datastructures of C# are better for performance. But dude, how many performance critical systems have you wrote in C#? I mean, if it comes to performance you should use Rust or C++ or C after all.
*sighs*15 -
In highschool I started by setting up an open tibia (OT) server for which I copied and edited lua scripts to create spells and quests. Didn't do anything remotely difficult in those times.
In university I needed to learn and use Prolog. And soon after that I had an OOP course in Java. Didn't really learn Java during that course. And started to accept I would never like real programming.
During a Datastructures course I actually got the hang of java and started to program in my spare time.
Finished the Datastructures course with a good grade which landed me a job as student assistant for a python course.
That job in turn landed me a part-time job as python developer where I learned most of my programming skills.
Now I'm back to working in Java and I still learn everyday. -
I got my circular buffer working for my oscope display I am working on for audio data.
https://github.com/Demolishun/...
I plan on expanding this to have more functions for bulk operations. I also want my fake iterators to be able to be used with <algorithm> functions.
It was pretty awesome last night to finally get to see my audio waveforms displaying properly.1 -
Do you think, that its a good idea, to add FP-features like Map,Filter,Reduce to Stack or Queue datastructures, in the way, that they pop all elements?6
-
Guys I want to seek help in datastructures is there any discord link which you know of where I can connect with programmers and discuss my results.
Plz mention it2 -
Are there any best practices for binding C-librarys to a higher level language?
Like, regarding Concurrency-Safety, memory-safety, general fault-tolerance, glue-datastructures with low overhead?2 -
Since I lack proficiency in Object Oriented Analysis and Design and Datastructures and Algorithms and this has caused me many problems at work, I must review these.
You'd think you don't need to know the 'dry theoretical matter' as they say, oh but you do.. I found out first hand at one of my tougher programming jobs where you have to create everything manually.
And now, looking at my entire first and second year of university courses regarding this matter.. the amount I have to study is enormous. Datastructures and algorithms alone: 1000+ page book + 500+ slides.. and that's only fresh man year! Yep.
I could say there's a way around it but.. I don't really think there is. If I keep just knowing the basic programming concepts, I won't get far. I need to dive deeper.
Until I master this material, it will keep haunting me in programming jobs.
The frustrations of a developer..7 -
I am currently going to start data structures and algorithms in python...
suggest me a roadmap according to your experience2 -
What's the minimal feature set that can make a language as ornamented as JS into a comfortable REPL?
Should I write a full parser or should I try to patch my way around with regex?
It will have to interface a lot with JS so it has to be able to manage JS datastructures in some fashion, which means that I can't just make a whole new command line with its own programs.
My current plan:
Some delimiter (probably a semicolon) will take the output of a command and inject it in the next in case you decide halfway through a line to do some more processing, It also awaits promises and does some other nice stuff to make controlling such pipelines easy. I have an elaborate system in mind to decide where a value must be injected to make the line valid so in most cases you don't even have to indicate it. JS has beautifully simple syntax rules so I have a lot of technical balance to burn before I start building technical debt.
I have some ideas for automatic parentheses and commas in function calls. I realize while using a command line you do not want to tap shift often. My main idea here is that two names or values in js are always joined by an operator so the first missing operator is a call and following missing operators are commas until the end of line. This has lots of nasty edge cases though, like that no argument expression can begin with a unary operator or a bracket of any shape. You can always prepend a comma but it's cognitive load.
Anyway, do you have any suggestion or warning besides "js bad" which I know but it's the most popular sandboxable language and has a massive existing set of libraries which I kinda need.3