Life As An Oracle DB Dev - 25 Million Lines Of Code

  Рет қаралды 234,872

ThePrimeTime

ThePrimeTime

Күн бұрын

Пікірлер: 306
@yintercept4612
@yintercept4612 5 ай бұрын
You mentioned the word ORACLE. A team of licensing experts will now audit your channel to determine how much money you owe Larry Ellison.
@z352kdaf8324
@z352kdaf8324 5 ай бұрын
I think I heard mention of Java also. That'll up the cost for him
@mxbx307
@mxbx307 5 ай бұрын
The same letter used in multiple sentences and in multiple lines and paragraphs? That's an extra seat. More money please.
@Falcon-gw2ec
@Falcon-gw2ec 5 ай бұрын
😂 too real... Just dealt with this
@Brettler99
@Brettler99 5 ай бұрын
Meanwhile, if you mention the word G*Og*e, your account gets shadowbanned.
@xj0ex39
@xj0ex39 3 ай бұрын
And chat. After he acquisitions of course.
@zachmoring284
@zachmoring284 5 ай бұрын
While working for Undisclosed Big Old Transport Company as a "SQL developer," the oldest stored proc I had to touch was older than me. First written in 1989, last updated in 1997 by a guy three "generations" before me in that role
@nezbrun872
@nezbrun872 5 ай бұрын
Could've been me ;-) My SQL career started in 1988.
@zeppelinmexicano
@zeppelinmexicano 5 ай бұрын
I'm assuming that the procedure wasn't bad if it lasted that long, but maybe it also forced some behaviors in the calling code that weren't so ideal? Interesting how long something can last but why mess with something that works? I'd hate to be you if you had messed with it, hahaha.
@retropaganda8442
@retropaganda8442 5 ай бұрын
You're seriously too young to touch that codebase. Wait until you've got your basic 25 years of professional experience
@michaelewen5498
@michaelewen5498 5 ай бұрын
If you don't understand the word "generation" then you probably shouldn't be touching that codebase.
@CallousCoder
@CallousCoder 5 ай бұрын
It’s very normal to have 30-40 year old code based in critical systems.
@Kynatosh
@Kynatosh 5 ай бұрын
I love the "DELETE ME DELETE ME" in the description instead of the article source
@matthijskortekaas3811
@matthijskortekaas3811 5 ай бұрын
Skill issue
@connorsmith6039
@connorsmith6039 5 ай бұрын
Someone get Flip another coffee
@Reichstaubenminister
@Reichstaubenminister 5 ай бұрын
Just a bug in the templating library Prime's brain uses. Or maybe the worker queue entry got lost. Or the code got commented out. A true mystery.
@JiggyJones0
@JiggyJones0 5 ай бұрын
Its been confirmed. Prime is an AI 😂
@TumbleFig
@TumbleFig 5 ай бұрын
Never underestimate the value of DELETE ME in an item name. So many times has that saved me from having to spend 30 minutes digging to see if I still need a file or a configuration item or a whatever... past self has told me it's OK. I trust you past self. Thank you.
@king4aday4aday
@king4aday4aday 5 ай бұрын
"Psh, I could rewrite it in a weekend from scratch"
@PySnek
@PySnek 5 ай бұрын
in scratch!
@Ayotundejerry
@Ayotundejerry 5 ай бұрын
🤣 We get the joke
@waltwhite8126
@waltwhite8126 5 ай бұрын
BLOW, Jonathan.
@ArrKayLondon
@ArrKayLondon 5 ай бұрын
Someone clearly went to the Elon Musk school of programming.
@xj0ex39
@xj0ex39 3 ай бұрын
@@ArrKayLondonElongate U
@disieh
@disieh 5 ай бұрын
The big problem IMHO with old gigantic, monolithic projects is once you grow past certain size, it becomes impossible to grok the whole thing at once. This is where good design, architecture and people like Linus comes in. Good design keeps dependecies sane, individual parts grokkable and Linus keeps devs from undermining the design.
@MrEnsiferum77
@MrEnsiferum77 5 ай бұрын
What Linus had bring? Hardly u can find linux kernel devs... that's why is rust crap in linux kernel...
@georgerogers1166
@georgerogers1166 5 ай бұрын
Theo DeRadt is even better.
@censoredeveryday3320
@censoredeveryday3320 5 ай бұрын
And then he allowed Rust into the kernel....
@StCreed
@StCreed 5 ай бұрын
​@@censoredeveryday3320 Yeah, what does he know, right? Having been a scientific programmer in C++, I can only applaud his decision. I see so many people without formal training, no knowledge of how to proof correctness in programming, and no habit of using patterns that allow the validation of the correctness of your program. And they're working on fricking kernels. Rust is a necessity for the future. Very few people are getting educated on C anymore, and self-taught people are not getting the formal CS training you need to do it competently on a large and sensitive codebase such as the Linux kernel.
@censoredeveryday3320
@censoredeveryday3320 5 ай бұрын
I worked at Oracle and on that code base for several years and yes it's all very fragile. Even the build system (called ADE) was this horrible Clearcase monster that used NFS to mount up different volumes to pull in various dependencies and other associated files. The bug tracking system is likely still the same and written in the 90s with web 1.0.
@erwinkonopka7071
@erwinkonopka7071 5 ай бұрын
Yeah. I worked in code bases like that. Nobody understood how it all worked and it was all strongly coupled so each time you changed something you ran a huge suite of tests and see how much did fail. If 1k+ failed then it was a small mistake and fixing it was easy. If few failed you were ducked since it was a complex set of conditions to cause it.
@UnFiltered1776
@UnFiltered1776 5 ай бұрын
This is gonna be good. The bots seem to love it.
@NJ-wb1cz
@NJ-wb1cz 5 ай бұрын
Bots seemingly switched to talking about bots to avoid being banned. Any video I click nowadays, the first comments are always about bots and there are no other comments
@alevyts3523
@alevyts3523 5 ай бұрын
The C language is not intended for writing large programs-according to the creators of the language. In a 1978 paper, Ken Thompson estimated that the UNIX kernel consisted of about 10,000 lines of C code (plus a small amount of assembly language). Other UNIX components were of comparable size; in another 1978 paper, Dennis Ritchie and colleagues estimated the size of the PDP-11 C compiler to be 9660 lines. By today's standards these are really small programs. They thought no one would write programs for 100,000 or even 1,000,000 lines of code in C-this is madness.
@zeppelinmexicano
@zeppelinmexicano 5 ай бұрын
What you said, I did not know but have always suspected. The tool has to be correct for the scale of the project, but so does the design of how to use it. I'm not sure we have either for a 25 million line code base, but it's massively popular and reliable in production despite its nightmarish maintenance problems. Some day it has to become a Weekend At Bernie's affair though. Think of how fast it will burn through maintenance coders and all the while The They are discouraging kids from become coders because "AI is going to displace you and leave you homeless with no other skills".
@No-mq5lw
@No-mq5lw 5 ай бұрын
Well, at that point 20MB wasn't a trivial amount of storage space to screw around with nor cheap, so going crazy with the LOC wasn't in their best interest. Have a feeling that C was very much designed around the storage and storage constrained programming paradigms of the time, rather than strictly not being for large programs. After all, logic is logic, and logic doesn't really care about how many LOC there are, just if the whole thing works or not.
@ivanjermakov
@ivanjermakov 5 ай бұрын
What language has to do with the size and complexity of the project? Proper type definitions and module/artifact separation allows you to split a product of ANY complexity into a reasonable chunks (let's say under 10kloc). The problem is that such projects never have requirements written in advance and built up on top of poor foundations.
@dennisk648
@dennisk648 5 ай бұрын
@@ivanjermakov, you are saying it like generations of programmers had no clue.
@vargab95
@vargab95 5 ай бұрын
I think maintainability depends more on the quality of design and implementation then LOC or the language. I'm working on a database started somewhere around 1980. It has above 2 million LOC in C and we don't have such problems. We can maintain it and still bring in new features with only a few devs.
@reaperinsaltbrine5211
@reaperinsaltbrine5211 5 ай бұрын
"The fact thet this product even works is nothing sort of a miracle". This actually sums up nicely ANY modern CPU or GPU or ASIC, made up from billions of basic units - often integrated from different design houses running at 2GHz and up...
@kollpotato
@kollpotato 5 ай бұрын
these bot comments are blazingly fast
@1roadrage1
@1roadrage1 5 ай бұрын
Beep boop schizo man!!!!!!
@InvalidPersistentName
@InvalidPersistentName 5 ай бұрын
You are blazingly fast 🥔
@kollpotato
@kollpotato 5 ай бұрын
@@InvalidPersistentName 🥔🥔🥔
@andguy
@andguy 5 ай бұрын
They’re written in Rust
@raptorate2872
@raptorate2872 5 ай бұрын
​@@andguythat's not even funny as rust isn't really as fast as most of its competition. But cultists be culting in the comment section.
@sdi87hhk
@sdi87hhk 5 ай бұрын
I love Linus' unhingedness, God bless his soul lol
@hinzster
@hinzster 5 ай бұрын
2:00 Unix is not a single product either. It's a collection of a lot of different products and it runs on all kinds of different architectures (non-MMU-Unix anybody?). This modularity means some code has been changed A LOT, while some code hasn't changed (because there was no reason to change it). Oracle is a monolith and I wouldn't be surprised if there are some pieces of 1977 code still in the codebase, and you can't just rip them out and replace them with your own shitty code (Rust mentioned, well, I didn't mention Rust, but you know what I mean).
@thecollector6746
@thecollector6746 5 ай бұрын
Not really. There is no one "Unix" ; and what is and isn't' a "Unix" depends on who you are asking to at any given moment. Depending on your definition of what a Unix is, it will or will not be a single product. For example...if you are talking about the kernel...it's a single product. If you are talking about GNU Linux...it isn't a single product. If you are talking about any of the mainline BSDs, it's a single product. Ad infinitum.
@_sneer_
@_sneer_ 5 ай бұрын
@@thecollector6746 technically, an OS has to be certified as Unix according to Single UNIX Specification (SUS). Therefore, Unix is a commercial product, since certification to use Unix trademark costs and then certified Unix OS is being sold. GNU's Not Unix, generally Linux Is Not UniX, Free/Net/OpenBSD are not as well. Those are Unix-like systems. Unix has a strict definition. macOS is a Unix, certified to Unix 03 specification. AFAIK only two chinese Linux distros ever had Unix certification: Inspur K-UX 2.0 & 3.0 and Huawei EulerOS 2.0.
@dennisk648
@dennisk648 5 ай бұрын
The best comment I put in the code: "I am sorry."
@alvarr2823
@alvarr2823 2 ай бұрын
Mine was "I need a beer after this"
@kephir4eg
@kephir4eg 5 ай бұрын
I worked on that code for 6 years. It's not half as bad as it looks. One of the better things I worked on in my career.
@Blaisem
@Blaisem 5 ай бұрын
Was the article dishonest then?
@kephir4eg
@kephir4eg 5 ай бұрын
@@Blaisem not necessarily. E.g. he brings the q of macros with dozens of flags. It is indeed the case, there can be multiple level deep macros with non trivial conditional logic. But it's not hard to understand how they worked and most of them were very well documented. Sometimes the comments for a macro are hundreds of lines of well written docs. Also, you are developing a highly robust system with extremely complex logic across hundreds of weird features. In plain C. You need some kind of domain specific language on top of C, it makes your life easier not harder. That's just one example. Don't get me wrong, some code was extremely bad. But overall it was an o.k. experience.
@zeppelinmexicano
@zeppelinmexicano 5 ай бұрын
@@kephir4eg great comments especially about the domain-specific language to control C with all its macros and flags. I suppose this gives Rust people some hope that they could do a better job but damn, 25 million lines, some very accomplished people have to ride herd over that.
@Ziggy0120
@Ziggy0120 4 ай бұрын
Im convinced Larry Ellison life force is sustained by the tears and misery of developers forced to interact with oracle products
@JarheadCrayonEater
@JarheadCrayonEater 5 ай бұрын
When I was in the Marines, from 1999-2007, Oracle hosted a company party in one of our hangers, and invited a few hundred of us to join. We drank all of the beer within the first 30 minutes, and they had to order more. They were pissed, and we didn't care. I've always hated working with Oracle products.
@LitheInLitotes
@LitheInLitotes 5 ай бұрын
Just sounds like you're lousy drunks
@69k_gold
@69k_gold 5 ай бұрын
Isn't that just your fault💀💀
@JarheadCrayonEater
@JarheadCrayonEater 5 ай бұрын
@@69k_gold, what's my fault? That we drank all the beer, and didn't care because fuck Oracle?
@friedpizza262
@friedpizza262 5 ай бұрын
I hope at least you like their beers
@christophkogler6220
@christophkogler6220 5 ай бұрын
What did they expect hundreds of Marines to do? NOT drink the free beer? Are they stupid?
@nerdycatgamer
@nerdycatgamer 5 ай бұрын
13:22 just wanna point out that you can do structural typing in C and is done for Unix socket API (like casting struct sockaddr_in* tosttruct sockaddr*), but it relies on potentially unsafe casts and you need to know what you're doing. This is allowed because the standard mandates that the order of struct members is the same as they are declared, and the standard mandates this for this exact use case too lol. in actual C code, void* is extremely rare, because it normally sucks. the only time I see void* is for some 3rd party callback API to pass the arguments to a callback function (along the lines of qsort in the stdlib)
@mab932
@mab932 5 ай бұрын
One trick I've used when there is complex preprocessor code that I can't tell what is going on is run the processor and see the code it generates.
@gregjor
@gregjor 5 ай бұрын
Good story, and a typical programmer perspective. He should have mentioned that Oracle created the market for commercial relational databases, which replaced stuff even more crap. Oracle became ubiquitous and one of the most profitable pieces of software ever written. One might even conclude that code quality, as understood by programmers, has little to nothing to do with customers buying and using the code, and making a shitload of money from it.
@Fanmade1b
@Fanmade1b 5 ай бұрын
That's really crazy. I've seen a lot of companies running on very bad code but still making a lot of money from being good at selling their shit, and a few companies with good software but bad sales and/or management that failed to become successful. I am always wondering if I'll ever find a company which is good at both.
@gregjor
@gregjor 5 ай бұрын
@@Fanmade1b Oracle the second largest software company, after Microsoft, by market cap. The next one is SAP, also reported to have a giant crap codebase.
@Fanmade1b
@Fanmade1b 5 ай бұрын
@@gregjor yeah. I've actually had to deal with code from all of them. SAP has a special place in my heart. One of the companies I worked for which actually had good code was developing an SAP and a PHP (Laravel) application in parallel, with both doing essentially the same, but with different target groups and implementations. One day at lunch, the SAP project managers were talking about a new feature that was requested by their customers. Their application basically matched ours in the affected place, so we (at this time PHP devs) asked them to explain that request to us. It was basically just one button to run a small series of actions which were always the same in a specific use case. We liked the idea, because even though our customers haven't actually asked for it, we could imagine that it could be useful for them and that page in the UI was pretty empty anyway, so that button wouldn't hurt even if it would've been rarely used. Since it was such a small task, we didn't even create a ticket for it and deployed it on the same afternoon (or the next day, I don't really remember exactly). The customers actually liked it and they started to use it right away. A few months later we heard one of the SAP guys mention that use case again and we asked what it was about. He then answered that they tried to implement that functionality, but it didn't work and they had to abandon that part of the project. But the customers already payd five figures for it and everybody was blaming each other. I don't know if it came to a lawsuit, but at that time it already sounded close. Well, even though our customers liked our PHP version a lot and they even wanted to have it for other facilities (it was about work safety, mainly used in the oil industry), our boss wanted to focus more on the SAP version, since there was more money in it. I quit a few months after he made that decision public and it took about two more years for the company to close down. So there we have a case of good software making some money and bad software making a lot of money at first and then none at all after it became a complete mess.
@macicoinc9363
@macicoinc9363 5 ай бұрын
Apple, I’d assume
@gammalgris2497
@gammalgris2497 5 ай бұрын
There must be a lot of requirements after almost 50 years of product history.
@elmoqbobo
@elmoqbobo 5 ай бұрын
I worked 25 yrs oracle dba and application development (from 1983). Now it seems to haved morphed into the inflexible Sap mode. No more fun user exits
@flyingmadpakke
@flyingmadpakke 5 ай бұрын
Where I work you can't merge with a red x, it's actually kinda smart because it forces you to always run the tests beforehand so you know which ones to delete before making a pull request.
@js32096
@js32096 4 ай бұрын
This is excellent content. Idk why I didn’t sub sooner. I need more entertaining and productive coding content in my life
@js32096
@js32096 4 ай бұрын
FYI it’s not this video why I’m subbing, but the one I watch about the ugly codebase plus knowing I’ve liked other videos of yours. Subbed within the first few minutes of this one.
@retropaganda8442
@retropaganda8442 5 ай бұрын
Oracle 23ai was released as stable just recently. And it's still amazing that it's that stable 😂
@lobovutare
@lobovutare 5 ай бұрын
It's actually quite cool to be able to just give up on a piece of code. I've never ever done that in my life. I've always felt that if I would do that it would end my career immediately. Once, I cried on the toilet after trying to fix a bug for 2 weeks straight. I felt like if I can't fix that bug then I am just now worthy to be a software engineer. After crying I found new inspiration and fixed the bug that day :) That was over 20 years ago.
@jdrumgoole
@jdrumgoole 5 ай бұрын
I worked at Oracle in 2002. When I was there it took 12hrs to compile.
@Kane0123
@Kane0123 5 ай бұрын
Still better than being a frontend dev.
@elorrambasdo5233
@elorrambasdo5233 5 ай бұрын
So true
@MrEnsiferum77
@MrEnsiferum77 5 ай бұрын
it's not even a job frontend dev
@cyberdron
@cyberdron 2 ай бұрын
Why?
@paraluchs_
@paraluchs_ 5 ай бұрын
Say what you want about the company but the database itself is even constantly evolving. In the releases after 12.2 there were tons of new features all around; Oracle contributes to the SQL standard a lot lately. I guess they must have improved something. And the quality is crazy good, imagine pushing an update to critical systems of 90 somewhat percent of fortune 500 companies. Amazing piece of engineering.
@nERVEcenter117
@nERVEcenter117 5 ай бұрын
The description in the post in the video and "Amazing piece of engineering" are not compatible. If I knew this about the codebase of a product I was critically dependent on, I wouldn't use it. Everyone bends over backwards coping because of organizational inertia: Oracle is trapped supporting DB, and clients are trapped using DB. So everyone acts like it's actually great and a miracle until a failure nukes 5% of the world economy.
@paraluchs_
@paraluchs_ 5 ай бұрын
​@@nERVEcenter117 Well Oracle is not "trapped". Look at some features of the last 5 years: - new JSON format that easily beats mongo in performance - vector storage and indexes - invented new data access types for graph-relational and json-relational auto mapping - introduced domains - introduced a data descriptive language - AI utilities (chunking and other stuff lang chain would do) - Import AI models into the database and run them there - huge high availability improvements - Multi lingual engine to run JavaScript, Python or Java inside the database - leadership position of standardising JSON SQL functionalities, etc. You can argue whether you need these features but they definitely are not held-back fighting against their own source code. And look up how many times Oracle "nuked up" or anything like that, you will have a hard time finding anything. They are in the game too long for agile quality issues. Also just run on-prem and test patches?!
@Blaisem
@Blaisem 5 ай бұрын
Oracle would be more impressive if Postgres didn't exist.
@retropaganda8442
@retropaganda8442 5 ай бұрын
​@@nERVEcenter117if you do use oracle extensively, you cannot not be amazed at what the product does. It is a great piece of engineering, probably unmatched.
@steffenbendel6031
@steffenbendel6031 5 ай бұрын
So Oracle started a month before I was born. And their code is like DNA. Optimised over generations and tested again the environment. It does not make sense anymore, but it works.
@mingweihuang6287
@mingweihuang6287 5 ай бұрын
Ive worked on a database software for about 1.5 years, the experience is similar except there are only a core set of tests required to pass for merging (about 20min to run in the code gate, and it's required to run a little bit larger set locally but I never did) while other tests are maintained by specific teams or testers
@volchonokilliR
@volchonokilliR 4 ай бұрын
Part of it is how it feels like to work on a big ORACLE & PL/SQL codebase running on an ORACLE DB. For example, there was this one big...Query. With subqueries inside it. I only could understand it after color-coding parts which worked together and staring at it afterwards for some hours
@Felianther
@Felianther 4 ай бұрын
This is why you fix technical debt as you go along and it's super important to report and actually fix the debt. If they had clean codebase, all new features would be implemented in hours instead of weeks
@mr3745
@mr3745 5 ай бұрын
From your paycheck, to all the essential public and private services you rely on, a large part of your life lives in Oracle databases that are secure, highly available, and have been upgraded and evolved countless times over those 40+ years. Sounds like this guy just doesn't really want to work in a huge, established C code base.
@ser-sf6qd
@ser-sf6qd 5 ай бұрын
thumbnail - POLAND MOUNTAIN
@DataToTheZero
@DataToTheZero 5 ай бұрын
In case people don't know. If you got complex macro behavior clang and gcc have -E which just processes the macros and spits out what the file looks like to the actually compiler. Remember macros are literally text macros like you would find in a text editor. For Example, #include literally just places the contents of the other file as plain text in your file. Then processes the macros in that text as if they were in your file.
@DataToTheZero
@DataToTheZero 5 ай бұрын
Your tester should be tested by the last good version of your tester. Sort of like the compiler written in the language it compiles. The best part about this is when you implement a language feature and then realize this language feature is the prefect feature for implementing it self. So you implement it twice, once to get it into the compiler and then a 2nd time to use it on itself. The tester version of this would be adding the feature to the tester and then using that feature to test the feature.
@kiseitai2
@kiseitai2 5 ай бұрын
Controversy incoming. I love templating in Cpp. My last personal websocket server was made fully with templates. It’s not hard unless you do not give yourself clues. The error stack is occasionally useful but rarely rely on it because templates do make that extremely messy.
@B20C0
@B20C0 5 ай бұрын
To be fair, "Do not break user space" is like the first commandment of Kernel maintainers, so it's kinda understandable Linux flipped.
@NateSmithIsHere
@NateSmithIsHere 4 ай бұрын
This seems just like a giant vent, but no real problem solving. Good luck to anyone in software development.
@kilngod1943
@kilngod1943 5 ай бұрын
LOL - As a dev, having to target multiple engines Oracle, DB2, MS SQL, My SQL, Informix Etc. Oracle is the most over rated, don't get me wrong Oracle is very good but its really about collecting a pay check by the ever shrinking and outsourced Oracle DB team as the total cost of Oracle is out of this world.
@bestviralvideosclips
@bestviralvideosclips 4 ай бұрын
I still remember working on a legacy on-prem product which was on OSGi. What the heck... is OSGi was my first reaction.
@AdamS-lo9mr
@AdamS-lo9mr 5 ай бұрын
Can't even imagine what it would be like to work on such a large codebase.
@benbowers3613
@benbowers3613 5 ай бұрын
Googled what defenestrate meant and here's the first definition: 1. RARE throw (someone) out of a window.
@itjechnician
@itjechnician 4 ай бұрын
Literally have kernel-level malware all the way down to the boot sequence, and its main exe is pulseaudio. Ion even have speakers on my monitor lmaooooo wtf I didnt expect to hear that
@TehKarmalizer
@TehKarmalizer 4 ай бұрын
Having used oracle software, I’m not surprised.
@johanlarsson9805
@johanlarsson9805 5 ай бұрын
Linus defenestrating people is a funny term. He is "throwing them out of windows", so... into Linux?
@ivanmaglica264
@ivanmaglica264 5 ай бұрын
For a 50 year old product, this is not shocking. The coding styles alone have changed so much in that time. Half of those 12mloc are probably tests anyway. I wonder when was the last time they have done a complete rewrite.
@meatcow417
@meatcow417 5 ай бұрын
I doubt there's any engineer on their team capable of leading a feat like that. How many decades would one have to work on that software to understand the nuances and use cases of hundreds of flags to know how you would need to simplify and/or remove any of them?
@pyaehtetaung
@pyaehtetaung 5 ай бұрын
Thor said "Caboose" is something you did prime.
@williamb9389
@williamb9389 4 ай бұрын
Oracles first major “enterprise” deals were with the CIA 😉
@AgneseDeturenne
@AgneseDeturenne 2 ай бұрын
Thanks for the forecast! I need some advice: My OKX wallet holds some USDT, and I have the seed phrase. (alarm fetch churn bridge exercise tape speak race clerk couch crater letter). How can I transfer them to Binance?
@davidiamyou
@davidiamyou 5 ай бұрын
Interned on IBM DB2 10+ years ago. Was not much different with 30M loc. Takes weeks to consult expert developers from different teams to understand some magic feature in order to implement a minimal first version on some new feature. That was before DB2 went for column based. Can’t imagine what’s it like now.
@jaybrooks1098
@jaybrooks1098 5 ай бұрын
wait. so oracle was available to the mini computers? can you imagine running a server on one of those s-100 bus systems...
@JacoBoogie
@JacoBoogie 5 ай бұрын
the red check in CI would like to talk to the boy who cried wolf
@IsaacShoebottom
@IsaacShoebottom 5 ай бұрын
The funny thing is rhat Unix was a commercial product during its early life through the 70s to 80s.
@UnidimensionalPropheticCatgirl
@UnidimensionalPropheticCatgirl 5 ай бұрын
Actual unix distributions (Solaris, AIX, zOS, HPUX) still are almost always commercial and closed source, BSDs and Darwin are the two big outliers in that. Prime just doesn’t remember the early UNIX wars nor the massive BSD legal shenanigans.
@JustinBrouillette
@JustinBrouillette 19 күн бұрын
Sounds like a job for Claude
@mastertainment116
@mastertainment116 5 ай бұрын
I thought he was talking about LInus tech tips. lol
@Jasonlhy
@Jasonlhy 5 ай бұрын
At least there have test cases
@BothoHohbaum
@BothoHohbaum 5 ай бұрын
whaaaat? HP-UX, AIX, (...), are no commercial products????!!!!!
@LuxGamer4ever
@LuxGamer4ever 5 ай бұрын
What an ending to a video
@amiddled
@amiddled 5 ай бұрын
It's paid for Larry's yacht at least...
@LKamii
@LKamii 5 ай бұрын
I refuse to believe that Oracle has got any tests in their code bases.
@mattcargile
@mattcargile 5 ай бұрын
Oh yeah this was a great post.
@D.von.N
@D.von.N 5 ай бұрын
Is this related to the oracle like SGD that after retiring the OSGD I can no longer work over two screens when remotely accessing the drives of my organisation? It was such a breeze previously and suddenly I am restricted to just one screen when I need to work on like 8 windows.
@alberto3028
@alberto3028 5 ай бұрын
What a monster!
@michaelweaver4439
@michaelweaver4439 5 ай бұрын
What do you mean Unix is not a commercial product?
@thewiirocks
@thewiirocks 5 ай бұрын
As much as Primeagen claims to be old, he's actually pretty damn young. He's among the whippersnappers who completely missed the Unix Wars. All they know is Darth Windows and the scrappy (but well funded by their own interests) Linux rebellion.
@jonathanjacobson7012
@jonathanjacobson7012 5 ай бұрын
This explains the price of Oracle DB, which is a great product btw.
@valentynvorobec7834
@valentynvorobec7834 5 ай бұрын
I kinda understand him. I started a job in company where whole system infrastructure has been built by one person for 30 years in C. You have to learn so much just to understand basic and transitioning to other languages or separating from it is a slow process. 😂
@sophiophile
@sophiophile 5 ай бұрын
Whats wrong with pulseaudio? Ive used it for tons of stuff without any issue. Added USB audio playing to my router just fine with it.
@logananderon9693
@logananderon9693 5 ай бұрын
How long does it take to fix a bug and push a change to CrowdStrike?
@CheesyAceGameplay
@CheesyAceGameplay 5 ай бұрын
Makes me feel good about my current legacy code base…
@ich6885
@ich6885 5 ай бұрын
Shoud've programmed Oracle DB in JDSL 🤷
@silvestroroberto9412
@silvestroroberto9412 5 ай бұрын
If you're an Oracle employee, you can't say publicly that there's a bug, or they'll fire you.
@privatesocialhandle
@privatesocialhandle 5 ай бұрын
I love the comment about Linus. You really need a man like that stop the code crap. Sugar-coating is okay when you performance manage a secretary. But dependable code needs strict and serious controls.
@herlegz6969
@herlegz6969 5 ай бұрын
You need direct honest feedback and can do it even with folks who missed something basic without being horrible. No one is perfect, don't expect perfection, but don't allow mistakes.
@indiandeveloper4624
@indiandeveloper4624 5 ай бұрын
As a database developer I can say db developer are the real deal.
@-parrrate
@-parrrate 5 ай бұрын
lawnmower can't steer a ship
@JorgeEscobarMX
@JorgeEscobarMX 5 ай бұрын
2:00 I agree with him on this one. I rather have a mean lead maintainer than whatever this Oracle C code base abomination is.
@zeppelinmexicano
@zeppelinmexicano 5 ай бұрын
Flag Abuse + Macro Abuse = OOP Inheritance Abuse? A lot of nice little tools explode when we scale with them.
@dd3715
@dd3715 4 ай бұрын
Why all great products started before Uncle Bob manifestos?
@TheSatyamsingham
@TheSatyamsingham 3 ай бұрын
I was asked to clean such a code🤣, it was then i realized how out of depth i was. whenever we have to debug some issue, we cant rely on comment on what the stored proc is supposed to do. because it might be doing something completely different.
@exception05
@exception05 4 ай бұрын
I read a long time ago that early versions of this DB were shitty as hell. In that time Oracle Inc. used IBM DB inside their infrastructure. Only when they migrated to their own Oracle DB, they realised why the clients weren't happy about their product. Through their own usage Oracle DB become a pretty good DB, so far as I recall the first usable version of DB was this one, where they implemented table triggers.
@emaayan
@emaayan 4 ай бұрын
2:30 the only way linus gets away with this type of communication is that he knows he's irrplaceable, if this was a corporate linus would be plastered by hr so fast no matter if he was right or wrong (unless he was politically connected) or they would have had workplace bullying lawsuites Which begs the question is the linux project as good as long as linus... lives? What happpens to it when he's gone?
@aaron-pw4nj
@aaron-pw4nj 5 ай бұрын
If I ever worked for Oracle I will just pretend I'm an techpriest from 40k
@14zrobot
@14zrobot 5 ай бұрын
Multiply issues by a 1000 and you get Windows
@ffelegal
@ffelegal 5 ай бұрын
What are you talking about? The Linux kernel is 30 million lines of code.
@saharatul
@saharatul 5 ай бұрын
Isn't most of that just drivers?
@ITSecNEO
@ITSecNEO 5 ай бұрын
​@@saharatulyes, the core is pretty small in relation
@TumbleFig
@TumbleFig 5 ай бұрын
The thing I don't understand about projects like this enormous C Oracle project are... is there really a good excuse for that? What is keeping them from introducing encapsulation where they can start adding new code in a way that won't break existing code? Start migrating ridiculous code blob monoliths to something resembling reasonable separation of concerns or encapsulation or anything that would make it less insane? Is it purely incompetent leadership or are they somehow trapped in a 25 million line C hell?
@thewiirocks
@thewiirocks 5 ай бұрын
The problem with something like Oracle is that you're plugging in a myriad of features to a relatively limited usage path. For example, I bet 12 million of those lines are just the computations for query planning and optimizing. The database has to make decisions about partitions, indexes, parallelization, and join algorithms just to start. Then it also needs to make advanced decisions like "do I apply a star transform here?" or "can I use a bloom filter to prune partitions?" Each of those having massive alternate paths to follow. All of that needs to pull together into a final query plan that the database is capable of executing. Is there any wonder there are thousands of flags? It's not necessarily bad architecture. It's just the complexity of the task being performed.
@Blaisem
@Blaisem 5 ай бұрын
I don't know if I'd phrase it as "incompetence." Rearchitecting a 25 million code project _into something better_ would be nothing short of a super computer level of intellect.
@UnidimensionalPropheticCatgirl
@UnidimensionalPropheticCatgirl 5 ай бұрын
Oracle still needs their flagship db to scale to insane sizes while maintaining at least reasonable performance, encapsulation and separation of concerns is in conflict with scalability and performance at fundamental level. Plus refactoring enormous C codebase including the insane amount of regression testing is incredibly costly, so it probably aint happening anytime soon.
@baumulrich
@baumulrich 5 ай бұрын
well, oracle would have enough money to potentially just start a new decision, even with 10000 engineers, that copies the code base and refractors it into something maintainable.
@sebastianchmielewski6281
@sebastianchmielewski6281 4 ай бұрын
any rust app in 25 years
@omnizsk
@omnizsk 5 ай бұрын
How can I find a link to the original blog post?
@JeremyAndersonBoise
@JeremyAndersonBoise 5 ай бұрын
Mauro earned that one, ngl
@modolief
@modolief 5 ай бұрын
Mauro - it's probably pronounced MOW-RO - think in these subunits: MA U RO
@piratestreasure2009
@piratestreasure2009 5 ай бұрын
Next time we hear Oracle is rewriting everything in Rust. Well the same problem was with Apple's Final Cut code, so Apple just rewrote it. New Final Cut had way less features and people were upset but that was the way to go.
@PopescuAlexandruCristian
@PopescuAlexandruCristian 5 ай бұрын
I think this is standard enterprise development if you work on anything that has a relevant user base and is 10+ years old. Our mutant is c++ we strive to keep it modern but my day to day work is similar fix bug/add feature, see 100 failed regressions, try to understand why, try to fix them, repeat
@salsa221
@salsa221 5 ай бұрын
rare outro
@jordanjackson6151
@jordanjackson6151 5 ай бұрын
So ummm. What’s the longest line of Assembly Language today?
@amansagar4948
@amansagar4948 4 ай бұрын
Imagine doing a rewrite of that stuff
@AlexMax2742
@AlexMax2742 5 ай бұрын
Word to the wise. Linus and Theo might have been able to get away with being a jerk to other maintainers in the interests of code quality, but most people aren't a quarter as smart as Linus/Theo, and should probably default to being pleasant.
@fg-zm2yu
@fg-zm2yu 5 ай бұрын
Linus is right -> do not break your users' operations (your customers).
@LtdJorge
@LtdJorge 5 ай бұрын
Mah-oo-ro
@LtdJorge
@LtdJorge 5 ай бұрын
And ro as in robot, not pronounced row
@LtdJorge
@LtdJorge 5 ай бұрын
Shit, but the R is soft, as in marine, not red.
@MarcDunivan-WO
@MarcDunivan-WO 5 ай бұрын
If ONLY they use Agile Development from the start! 🤣🤣🤣
Migrating 3.7 Million Lines Of Code
23:06
ThePrimeTime
Рет қаралды 150 М.
The Most Amazing Software Ever Created
20:02
ThePrimeTime
Рет қаралды 427 М.
Every team from the Bracket Buster! Who ya got? 😏
0:53
FailArmy Shorts
Рет қаралды 13 МЛН
I Sent a Subscriber to Disneyland
0:27
MrBeast
Рет қаралды 104 МЛН
I Accidentally Saved HALF A MILLION $ | Prime Reacts
29:12
ThePrimeTime
Рет қаралды 395 М.
The Rise of Oracle, SQL and the Relational Database
22:19
Asianometry
Рет қаралды 164 М.
MircroServices (and a story about Netflix) | Prime React
14:22
ThePrimeTime
Рет қаралды 256 М.
Firing Our Top Talent Was The Best Decision Ever | Prime Reacts
23:19
The 3 Laws of Writing Readable Code
5:28
Kantan Coding
Рет қаралды 831 М.
Microservices are Technical Debt
31:59
NeetCodeIO
Рет қаралды 764 М.
Linus On LLMs For Coding
17:06
ThePrimeTime
Рет қаралды 315 М.
How to Get a Developer Job - Even in This Economy [Full Course]
3:59:46
freeCodeCamp.org
Рет қаралды 3,4 МЛН
SWE Stop Learning - The Rise Of Expert Beginners
49:09
ThePrimeTime
Рет қаралды 349 М.
IS THIS SOFTWARE DEV? | Prime Reacts
19:17
ThePrimeTime
Рет қаралды 461 М.