Тёмный

Java is mounting a huge comeback 

Fireship
Подписаться 3,3 млн
Просмотров 1,2 млн
50% 1

Java 21 will bring major improvements to the world's most popular enterprise programming language. Learn about unnamed classes, string templates, and other new features expected in the future.
#programming #tech #thecodereport
💬 Chat with Me on Discord
/ discord
🔗 Resources
Java 21 Unnamed Classes openjdk.org/je...
Java in 100 Seconds • Java in 100 Seconds
Java for the Haters • Java for the Haters in...
🔥 Get More Content - Upgrade to PRO
Upgrade at fireship.io/pro
Use code YT25 for 25% off PRO access
🎨 My Editor Settings
Atom One Dark
vscode-icons
Fira Code Font
🔖 Topics Covered
New Java features in version 21
Java Programming basics
Unnamed classes and Instance Main Methods
Java Memes
Should I learn Java?
Why do people hate Java?

Опубликовано:

 

4 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 2,8 тыс.   
@Myvoetisseer
@Myvoetisseer Год назад
Can't believe they finally updated their website. It really is the end of times. The hardest part of learning Java was never the boilerplate. It was finding the correct download.
@complexity5545
@complexity5545 Год назад
So many choices.
@mahanishbaruah3999
@mahanishbaruah3999 Год назад
The default download is still java 8 😭
@faradayawerty
@faradayawerty Год назад
I liked the old website
@tmicecave
@tmicecave Год назад
​@mahanishbaruah3999 Java 9 and up gets bundled with the application as a standalone program. No need to download and install Java anymore.
@VoidPaul97
@VoidPaul97 Год назад
Are you guys telling me you downloaded it from their website instead of Oracle's? Now I get why people hate it SMH
@LesegoTabane
@LesegoTabane Год назад
I’m a Java developer at a bank and we still running Java 8. It’s only now that I’m writing my first microservice for java17… I don’t see us getting to 21 anytime soon.
@cchutney348
@cchutney348 Год назад
Same here, banks are terrible at adopting anything even remotely new. But on the flip side, what we *do* have is a horrible mess, so it's not all bad!
@Jubinmail
@Jubinmail Год назад
@@cchutney348 Hey, if it isn't broken, don't fix it.
@cchutney348
@cchutney348 Год назад
@@Jubinmail That's all fine and dandy, but everything works until it doesn't.
@Janakaq0
@Janakaq0 Год назад
Learned java this year in college and we had to use 11
@xeon39688
@xeon39688 Год назад
Java developers and users really hate to be up to date
@TheDiscoMole
@TheDiscoMole Год назад
I am not scared of AI, I am scared of Java making an unironic comeback.
@BusinessWolf1
@BusinessWolf1 Год назад
XDDD
@thedomham2831
@thedomham2831 Год назад
Java never left.
@nnnik3595
@nnnik3595 Год назад
Be afraid for Java is eternal. Cue evil villain laugh
@anonym1984
@anonym1984 Год назад
Java making a comeback, AI learns to write Java, we're all doomed.
@entx8491
@entx8491 Год назад
Where's the unirony?
@kacper9948
@kacper9948 Год назад
I'm suprised how much I like Java when I started learning it for Backend Dev with Spring Boot. It's the language that actually taught me to use OOP (considering that it is basically forced), and the verbose code somehow makes it very readable for my little stupid brain, especially when it comes to others code.
@victorpimentel3072
@victorpimentel3072 Год назад
same experience here
@adriankal
@adriankal Год назад
And that's the problem with Java. It's oop language.
@justsomeredspy
@justsomeredspy Год назад
That's exactly how I would describe Java. It's syntax is verbose, but it isn't ugly. The combination of rigid structure and general verboseness actually makes it easy to tell what a piece of code does once you're familiar with the language. My personal pick for ugliest language (that's still a legitimate modern programming language I use) is JavaScript. That's not to say you can't write beautiful JavaScript code, but it takes some discipline. The combination of nested promises, ambiguous typing, and variable scope lends itself to all sorts of bad practices. Sorting through old JavaScript code written by somebody who no longer works for the company is quite an experience. I had to add a page to an old AngularJS tool we wrote for internal use. The whole thing was written in Angular v1, and every... _single..._ variable was stored in *GLOBAL SCOPE.* Absolutely no documentation or comments for anything. Fun times.
@klaudialustig3259
@klaudialustig3259 Год назад
What did you do before being a Backend Dev?
@sohailabbas007
@sohailabbas007 Год назад
Same for me
@cse8617
@cse8617 8 месяцев назад
thank you all for hating java, less competition for me, keep it up
@wlockuz4467
@wlockuz4467 Год назад
Java Website went from 2000s to 2010. Huge leap.
@LuisSierra42
@LuisSierra42 Год назад
Things are looking great for the Java ecosystem
@jimmyjimmervin4507
@jimmyjimmervin4507 Год назад
i am dead bro 🤣
@pyp2205
@pyp2205 Год назад
Java Website in 2090: **looks like a site from 2080**
@CrystalStarscape
@CrystalStarscape Год назад
me who loves the 2000s aesthetic 😢
@lawrencedoliveiro9104
@lawrencedoliveiro9104 Год назад
Sorry, I don’t follow GUI fashions. I don’t have the brain cells to waste getting that joke.
@onrir
@onrir Год назад
Let's see if their website can also become "modern" 😊
@Philopater-Phoneix
@Philopater-Phoneix Год назад
they gave it an update after 20 years
@yuriikuzniak3745
@yuriikuzniak3745 Год назад
It's kinda is
@onrir
@onrir Год назад
@@Philopater-Phoneix still looks old tho
@alefz
@alefz Год назад
Cool pfp dude
@simon-james
@simon-james Год назад
Impossible!
@thedownwardmachine
@thedownwardmachine Год назад
If you want to know what Java will introduce three years from now, look at what Scala is doing now. A lot of Java updates are based on taking features from Scala and back porting them to Java, especially when the JVM gets changed to support Scala features.
@Nick-yd3rc
@Nick-yd3rc Год назад
Scala has been disentangling for a few years, hope Java is still there in three years.
@nnnik3595
@nnnik3595 Год назад
@@Nick-yd3rc as long as Minecraft still sells.
@rafalmalinowski1716
@rafalmalinowski1716 Год назад
it takes from all the languages now, a lot of good thing every 6 months
@Nick-yd3rc
@Nick-yd3rc Год назад
​@@nnnik3595ask Microsoft then, they've got the crystal ball on Minecraft. Quite a huge revenue source btw
@Nick-yd3rc
@Nick-yd3rc Год назад
​@@rafalmalinowski1716I've yet to see a single feature carried over that's better that the original, looks more like a compromise to slow down the switch to Kotlin and the move away to other platforms, especially after the change of licensing and support terms that the legacy codebases have grown accustomed to. Without that failsafe SLA, a move elsewhere is on the table, and it's only the devs' reluctance that can hold it back for those projects
@suparki123
@suparki123 Год назад
Our school specifically chose Java as the first language taught specifically because it forces OOP on the user, and java is a great language for learning just that. I understand that OOP is not always necessary, and sometimes even overcomplicates things, but I know so many colleagues who've never really learnt OOP and fail to identify situations where it could really be useful.
@musaran2
@musaran2 Год назад
OFP (Object Forced Programming). And good programmers *like* to learn new concepts.
@gabrielmourao2854
@gabrielmourao2854 9 месяцев назад
My university taught java as a second language. Im not sure about which to choose as the second, but i still agree with it that you should use c. C is one of the only languages where you have to explicitly tell that you are going to use a memory adress as a pointer, so you not only learn the basics such as function calls, variable types, operations and loops, but it does so in a way that is preditable and easier to see how itd run, and also teaches you how references really work. However, object oriented programming is still pretty important to learn, so after learning the basics we jump to java and start coding structures such as lists, etc. This way you learn how the code behaves predictably and how references (or pointers for c) works perfectly before moving to other OO languages, without any noises or additional complexity that the OO languages offer
@lautaro1670
@lautaro1670 3 месяца назад
Weird that they would use a non-OO language like Java to teach objects instead of using something like Ruby or Smalltalk
@GhostRiley-zs8zb
@GhostRiley-zs8zb Месяц назад
@@lautaro1670 or c++ too
@bunnihilator
@bunnihilator Год назад
I develop both using Java/Spring Boot and TypeScript/NestJs In Node you need to install a bunch of dependencies just to make a minimal working foundation for the framework. The lack of type safety introduces bugs, not in compile timae but in runtime letting the wrong variable type pass. There are multiple ways of doing things. There is no consistency. In my opinion is just a wild west ar this point. In Java everything is typed, avoids data type bugs by compile/runtime. There's only one way of say declaring an array. You cannot ommit return types. It's strict which makes it predictable. And you won't believe this. The code is actually cleaner and better to look at than TypeScript. Also Spring Boot is the most advanced framework you'll ever get. So Java is actually stable, consistent and solid to work with.
@peanutcelery
@peanutcelery Год назад
I like JS but JS for the backend was a mistake
@driveDoses
@driveDoses 10 месяцев назад
I agree with you. Even I work on spring boot and react with typescript. Backend always feels very clean, structured and easy to work. But frontend is all messed up.
@peanutcelery
@peanutcelery 10 месяцев назад
@@driveDoses I think he was talking about TS/JS in the backend (Node), but I think it depends what framework you use in JS/TS. Mostly all the JS/TS frameworks do not implement design patterns, thus you get unstructured code. I have found that Nest.js and Angular are the exemption to that. I would still strongly avoid any non strongly typed language in the backend, but that's my opinion. Others say it is doable to have dynamic typing in the backend with heavy TDD implementation.
@simomed5002
@simomed5002 9 месяцев назад
I heard recently that java standard edition will require licensing to use, and lot of headache when I searched about this, I am not even sure today if java is a paid programming language, and oracle seems to look for the least thing to get money from companies using java, you don't heard about this kind of stuff in any other language!! weird
@javier.alvarez764
@javier.alvarez764 9 месяцев назад
Java SE is for desktop app, no one codes desktop apps these days. Most are saas products.
@JakobMusic
@JakobMusic Год назад
The one positive thing I have to say about Java (and thats 100% a personal thing) is that it helped me understand so many things in object oriented programming. I learned Java in School, learned advanced Java at university, coded in Java as my first job. Basicly any design pattern you can think of is implemented in Java, sometimes well, sometimes not so well, and you can certainly argue that there are actually too many design patterns. But still.. from basic inheritance to singletons, factories, dependency injection, annotations to more complex things like pattern matching, lamda functions... all this I originally learned in Java. Java is so unnecessarily complex that the only way to code in it is having a somewhat deep understanding of whats going on. Rather than javascript for example where You just bang Your head on the keyboard until something works. So yea.. for educational purposes Java is nice.
@LettersAndNumbers300
@LettersAndNumbers300 Год назад
Will second this, apart from that I never learned to like it outside of learning. Classpath libbpath gtfo
@HolyRamanRajya
@HolyRamanRajya Год назад
How do you define Abstraction and Encapsulation in Java? I swear I get too many candidates from Java background who say "data hiding/security" to define Abstraction and includes access modifiers as example; and says "referencing a set of similar things" as Encapsulation. Not sure if Java has fixed their docs, but I get a stroke when I hear that.
@Rope257
@Rope257 Год назад
I'm sorry, Java is not "complex" if you think it's complex then I'd argue other languages are over-simplified. If anything, being new to a language is what makes it look complex especially if it is packed full of features.
@danvilela
@danvilela Год назад
But that is the problem! You learn unnecessary stuff and your brains automatically starts producing bad code. Now you are a java head with a lot of useless concepts in your mind and you think you “learned” something good
@dickurkel6910
@dickurkel6910 Год назад
​@@danvilela Which if those concepts are useless though...
@HeisenbergFam
@HeisenbergFam Год назад
"Java is my all time favorite programming language.. To make fun of" The ultimate embodiment of "ngl he had us in the first half"
@recommendmeanything
@recommendmeanything Год назад
Oh my god, you're everywhere lol
@rodrigovaccari7547
@rodrigovaccari7547 Год назад
Bro spends his life on youtube
@LetsPlayCrazy
@LetsPlayCrazy Год назад
I was expecting: "Java is my all time favorite programming language.. Said no one ever!"
@frozenintime
@frozenintime Год назад
​@@LetsPlayCrazy Java is my favorite programming language. I don't do scripting. There's a difference.
@LetsPlayCrazy
@LetsPlayCrazy Год назад
@@frozenintime So... you just like how much suffering it brings to others? I can respect that.
@sumansaha295
@sumansaha295 Год назад
Kotlin makes me appreciate Jvm and Java ecosystem, The developer experience is very good, and I totally understand why enterprise software is written in Java. Less time reinventing wheels and more time getting work done. And the performance isn't even bad.
@officialtechin5
@officialtechin5 Год назад
Would you mind sharing your thoughts in more detail? I'm learning at the moment and I find what you say very interesting
@Gaer56
@Gaer56 Год назад
I'm jealous, I've started with Eclipse, and it made me hate Java with passion.
@MrLowbob
@MrLowbob Год назад
@@Gaer56 intellij all the way, if I have to code in java ... everything else is unbearable.. eclipse isn't bad per se, but java sucks and inteiilj makes the best out of a shitty experience so far ;D
@MrLowbob
@MrLowbob Год назад
kotlin is decent, still prefer other stuff if I'm allowed to. I second the "don't reinvent the wheel" part though. and that will probably be the reason why java will stay so relevant for quite a long time
@wlockuz4467
@wlockuz4467 Год назад
I started working on Android with Eclipse and Java. When I started using Android Studio and Kotlin, I felt like I was released from a mental asylum.
@tiffanitaylor8373
@tiffanitaylor8373 Год назад
Never thought I'd see someone else say Java is their favorite language 😅 I love Java. I have affinity because it's the first one I learned and 20 yrs later, I still feel safer and more confident in my code when writing Java.
@jabelardo
@jabelardo Год назад
Java have put bread at my table for 2 decades. Fortunately in my current job we have the policy of using the last LTS so we are currently on 17 and planning for migrating to 21 next year
@mario_luis_dev
@mario_luis_dev Год назад
My favorite language continues to be and will always remain C++, but now that I've been working with Java and the Spring framework for nearly two years, I can say that I dig the Java ecosystem more and more. It's not as bad as ppl make it seem
@marquez2447
@marquez2447 Год назад
I'm sure that most people who hate on Java have never worked professionally with it
@joshman1019
@joshman1019 Год назад
@@marquez2447 I've found the same for C#. But I love the fact that if you know one, you mostly know both. So the two languages and their ecosystems really work well together.
@HolyRamanRajya
@HolyRamanRajya Год назад
I learnt Java in school, but started career with C#. .NET is just miles better. Kotlin is good too, so is F# now. Most annoying aspect of Java is they used dumb words like "data hiding" to define Abstraction and "referencing a set of similar things" as Encapsulation. idk if they changed it but I still get candidates with Java background in interviews who use these definitions.
@NatoBoram
@NatoBoram Год назад
Everything seems good when you only know the hardest languages. You should try something different!
@MeseretMuleta-cx4tz
@MeseretMuleta-cx4tz Год назад
Hello mario , i am beginner java student would you mentor me ?
@quantume7143
@quantume7143 Год назад
3:15 I was looking at the screen and said to myself: I don't get the joke. After a little bit I imagine myself using that class and I realized there is no getter for that private variable "joke" I just get the joke when I found out I can't get the "joke" lol :)) Good one
@rubbish9231
@rubbish9231 Год назад
But you get set it in same class.
@gonpaul_
@gonpaul_ 7 месяцев назад
lmao
@HandledToaster2
@HandledToaster2 Год назад
As a Java Developer: please continue to hate Java with a passion, that means more open positions and higher salaries for me!
@porky1118
@porky1118 Год назад
0:55 I think, it's fine to have "void". It's just like C. I'd also prefer if you don't need a function at all, but having one makes it slightly easier to refactor, if your main function will just become one of your main functions.
@bgdgdgdf4488
@bgdgdgdf4488 9 месяцев назад
Your main function in c should return int but that's none of my business
@waliqadri
@waliqadri Год назад
Java's syntax is admirably structured, adorned with informative keywords that empower developers. Despite the jests surrounding "public static void main string args," these essential keywords precisely convey vital information. Each keyword plays a significant role, and once you get good at it makes you feel in more control. As a C# programmer, But i love java(not Oracle) due to its exceptional organization and powerful nature. Not only is it simpler to maintain, but it also proves to be a reliable choice for enterprise-level software development that can stand the test of time for many years.
@kaz7690
@kaz7690 Год назад
I don't know why people hate Java because it takes so long to write the main method and to print something when literally every word in those 2 lines have a very well structured meaning. Everything in Java exists for a reason and everything is very well defined.
@exidrial431
@exidrial431 Год назад
@@kaz7690 "takes so long" - The main method gets auto created and printing something is a matter of just typing Sys and hitting alt+enter or whichever is your auto complete key. 'Then why have the System.out when it just gets auto completed anyway?' - I can see the question coming and the answer is simple - it conveys importnt information. If you just read "print" then how can you be sure that it's the global print method? That it wasn't overwritten somehow? How can you be sure that it's printing to the console? Sure you can expect all of these things to be a given, you can expect that "print" simply prints to the console or whatever. But it's about the principle. Java is very good at clearly declaring what everything is doing - And that is what I love about it, I wouldn't have it any other way. System.out.println() to me looks cleaner and more correct than simply print().
@benhook1013
@benhook1013 Год назад
@@exidrial431 Its very frustrating reading all of that java hate, most of it is nonsense. Who the fk uses println in production code, you call a logger function. Most of the people hating on OOP seem to be hobbyists. We switched to Go at work, we have about 15 microservices that make up our app, and Go has been a nightmare of finding missing/incomplete features, having to refactor things as Go makes breaking changes etc. We've been using it for 3-4 years now so probably jumped on a bit soon, but we are still finding library code that we have to write our self, that would be included in Java :/
@kakalukio
@kakalukio Год назад
@@kaz7690 It's simple really; Java is like that strict music teacher who makes you practise your scales over and over, or a ballet teacher who keeps complaining you should point your toes and maintain proper posture. The people complaining are the smartass teenagers in the class who just wannt skip the boring part of learning how to do things properly and immeadiatly play the complicated guitar solos without ever learning the basic fundamental skills. So they fuss and moan when the strict teacher forces them to do things properly. They'd much rather "program" in something like Python, where they can just write any old garbage, preferably using a library that does 99% of the actual difficult work for them, and it'll probably work. It's also why these complaints are basicly always about absurdly trivial examples, like hello world. These aren't people writing a lot of actual code for big projects, so to them it always remains pointless boilerplate with little to no use.
@orbyfied
@orbyfied Год назад
Java is a mid language, but the JVM and Java Ecosystem are incredible
@Infiny92
@Infiny92 Год назад
Is there any reason to learn Java and not directly something like Kotlin?
@orbyfied
@orbyfied Год назад
@@Infiny92 yeah, cuz kotlin is weird
@sethjets4687
@sethjets4687 Год назад
@@Infiny92 Not really, Kotlin was made by jetbrains and it's directly aimed to write java with a lot less boilerplate due to it's interoperabilty, so learn Kotlin and later if you really need to program in java at least the road won't be that hard
@itsmenotjames
@itsmenotjames Год назад
@@sethjets4687 kotlin was made by jetbrains...
@sethjets4687
@sethjets4687 Год назад
@@itsmenotjames Oops, corrected 😅
@harald9586
@harald9586 Год назад
As Bjarne Stroustrup once said “There are only two kinds of languages: the ones people complain about and the ones nobody uses.”
@UltraGaivalas
@UltraGaivalas Год назад
Yes
@Nick-yd3rc
@Nick-yd3rc Год назад
There's also Rust which everyone's trying to rewrite the world in.
@leularia
@leularia Год назад
who use java if new project
@leularia
@leularia Год назад
im 1000% sure no one will start new project from scratch and use java
@tsigahn6509
@tsigahn6509 Год назад
@@leularia well I’d imagine it depends on the project
@ilkou
@ilkou Год назад
The spring framework makes Java so much fun to work with 🍃
@SirDamatoIII
@SirDamatoIII Год назад
Have you tried C#.
@ilushkins4642
@ilushkins4642 Год назад
"The spring framework makes Java so much fun to work with" ... unless you worked with any other web framework
@musashi542
@musashi542 Год назад
@@ilushkins4642 true lmao
@xN811x
@xN811x Год назад
​​​@@SirDamatoIII I've used both and I would use neither for my personal projects. Sure, C# has more syntacic sugar than Java, but it still promotes the same way of structuring programs. I recently worked with a collegue on a project. He did the backend, I did the frontend. I had a look - everything he implemented could have been done in about ~1000 lines of TypeScript. Instead he created distributed mess of abstractions. I don't know why anyone would want to work in something like that. But idk... it's a personal preference I guess. Some people like "implementation patterns", some want to get things done.
@OzzyTheGiant
@OzzyTheGiant Год назад
Said no one ever
@Baptistetriple0
@Baptistetriple0 Год назад
For those that don't get why you need the "charAt" method on string in Java and can't directly index it, it is because string in Java are UTF-8, so it is not just an array of char, it is an array of bytes, because UTF-8 is based on unicode so not all char are the same size in bytes, so accessing the nth char is not O(1), it is O(n) as you need to traverse the string to find the starting location of the char, find it's size, and decode to unicode. Strings that handle UTF8 "out of the box" are harder to deal with, because they have railguards to prevent you from shooting yourself in the foot, but force you to write code that's going to work whatever the string is. strings with char out of the ascii table are a pain to deal with when not natively supported.
@sku796
@sku796 Год назад
You are wrong. Strings in Java is NOT UTF-8. It is UTF-16 where all characters have 2 bytes. Since Java9 we can have compact strings where all characters have 1 byte. So complexity is ALWAYS O(1). You can look into source code for charAt.
@purpleshirtfish
@purpleshirtfish Год назад
You are both wrong. Strings in Java are NOT UTF-8 or UTF-16, they are UTI-PooPooCaca so each char is 3 bytes. I know this because I use python.
@sylvereleipertz955
@sylvereleipertz955 Год назад
​@joshainthere4402 ha yeah python. Aka the slowest programming language of the universe 😂
@jamesking2439
@jamesking2439 9 месяцев назад
​@@sku796 Wait, isn't UTF-16 variable length?
@hellterminator
@hellterminator 8 месяцев назад
@@jamesking2439 It is, but all the platforms ignore that and pretend it's not.
@jerichiyo
@jerichiyo Год назад
I learned to code with Java, completed my first project with php, tried to switch to c#, wanted to learn Javascript, but now i find myself working with java! what a life.
@josealvaradotorre6870
@josealvaradotorre6870 Год назад
The Streams API and annotations are gorgeous. I honestly prefer Java much more than JS/TS for functional programming.
@InfernalLegion84
@InfernalLegion84 Год назад
Yes! I was hoping to find at least one comment like this :)
@sumansaha295
@sumansaha295 Год назад
Streams api doesn't work as well as I want, a while back I wrote some map and flatmap transformations, it didn't work, wrote the same thing in kotlin and it works perfectly.
@driden1987
@driden1987 Год назад
If I wanted functional on the jvm I’d just stick to Scala.
@jayshartzer844
@jayshartzer844 Год назад
In Kotlin it is as easy as a: (b) -> c
@bobobo1673
@bobobo1673 Год назад
XDDDDD
@alvins5054
@alvins5054 Год назад
There are a lot of convenient shortcuts in IntelliJ such as psvm and sout instead of Public Static Void Main or System.out.println etc. I recommend looking them up for people who don't know because it will save a bit of time here and there.
@xelspeth
@xelspeth Год назад
This is the reason why I have to type sout to write console.log
@Unga_Bunga
@Unga_Bunga Год назад
How often are you guys writing main methods. Like 20 times a day?
@alvins5054
@alvins5054 Год назад
@@Unga_Bunga Not main, but sout or other stuff are a bit more common.
@wyqtor
@wyqtor Год назад
GitHub Copilot is the biggest timesaver of them all!
@Midlifecrypto
@Midlifecrypto Год назад
IntelliJ FTW! Such an amazing IDE frankly speaking!
@Chrisdashes
@Chrisdashes Год назад
"Put food on my family @0:38" . . . WHAT!!?
@lawrencedoliveiro9104
@lawrencedoliveiro9104 Год назад
And presumably also roof his house.
@richardcesar5546
@richardcesar5546 Год назад
This might be a hot take, but up until rust, Java was unironically my favorite language to work in for most mid to large size projects. And the reason primarily comes down to its enums, which for both languages take on the power of variants. These variants make the strategy pattern, aka swappable implementations, a pleasure to work with. The scaffolding never bothered me, a lot of that was auto-generative. As an example if you type the keys "psvm" followed by a space in most java ide's your going to get a fully formed main.
@FurryDanOriginal
@FurryDanOriginal Год назад
Enums are one of the very few things I prefer much more in Java than C#.
@si-level
@si-level Год назад
What so good with enum?
@HrHaakon
@HrHaakon Год назад
@@si-level 1. The instances of the enum are all the instances that there will ever be, so they're an enumeration of values. 2. They're still just normal objects with methods, fields, etc. like any other method. They can extend other classes, implement interfaces and so on. Together this lets you deal with certain enterprisey problems very succinctly. A lot of stuff tends to end up with code like: return MyEnumThatDoesSomething.findTheRightOneFor(thing).manhandleItIntoWhateverYouNeed(someDependency); Which tells everyone reading it what's going on immediately: - There's multiple ways to deal with this input. - These ways are inside this enum. - The enum itself has a static method that can find the right one for you And so you don't have to care too much. A lot of complexity can be ordered inside there. There are other ways that it helps too.
@HolddisNerd
@HolddisNerd Год назад
Yes officer that's him. He updated his java
@fasantupp
@fasantupp Год назад
Ah, Java is fine. We've been updating our codebase from 8 to 17 for the last year. We have good templates to setup new micro-services and great company specific imports for boilerplate code. And there is so many annotations you can use to make the code look pretty. I started out in C# but java is kind of growing on me. Privately I usually use python though. For frontend I use whatever feels best at the moment, I kinda like flutter because of the cross platform easiness.
@kahssie
@kahssie Год назад
i miss flutter for sure! was a short stint with it, but going from 0 programming knowledge to getting thrown into the middle of higher education with it was challenging to say the least. Flutter is a uniquely structured language, but it helped me visualise how programming its parts worked.. and something in my brain clicked about programming altogether. Actually saved me a ton!
@transcent7
@transcent7 10 месяцев назад
​​@@kahssiewhyd you miss it though? Flutter is growing. Slowly but steady. Can't wait for release of webassembly shenanigans, maybe people who actually studied CS for a month will understand what that means and drop js for good.
@filipstudeny
@filipstudeny Год назад
It may sound wierd, but I love how Java code is big. It makes me feel good when I code something (also I do get paid to create exercises for Java)
@jamesonthehills
@jamesonthehills Год назад
why do i understand and agree with what you just said
@sdfsdf421df
@sdfsdf421df Год назад
big java code is trick. It's really annoying to write problem X in 25 LOC of code, but once you did that, you have straightforward, easy to read code. I love it. We had externist who worshipped scala. He wrote it in 2 LOC or so. Without unit testing, because why if it works(his actual words). I took me 1 hour to understand it, another one to be sure it's wrong, 20 minutes to convince him to explain it, 40 minutes him trying to remember how it worked in first place before he admitted it's wrong indeed. - you want big easy code. And learn to write using all 10 fingers, without mouse and arrowkeys, and how to use templates to spit out text quickly. Code should be written to be understood, not to be written faster.
@InfernalLegion84
@InfernalLegion84 Год назад
@@sdfsdf421df Amen brotha
@lubricustheslippery5028
@lubricustheslippery5028 Год назад
I have a feeling that one of the problem with Java is that you can write a lot of boilerplate object oriented code that don't do much and feel happy.
@sdfsdf421df
@sdfsdf421df Год назад
@@lubricustheslippery5028 true, and probably part of that java is big and easy to work with. I mean you can write object oriented code - private fields/methods, polymorphism, inheritance - in pure javascript using prototypal inheritance, but will start to suffocate with your first class supporting all this. Anything deeper than 3 will be headache. The language complexity (in this aspect) and how hard it is makes you not to do it (often). You can do a really bad stuff in lots of languages. Same in java, but you will get lost in complexity later, so the discouragement to do it is weaker... Sometimes when you will get lost it's too late. You are definitely correct, overengineering happens to me and I need to control it, but I don't think it's necessarily bad aspect of language. It's direct implication of it being easy and understandable; you have room to create your own complications to work with, where other languages comes with them already :D
@magamboisaac7602
@magamboisaac7602 Год назад
After spending 6 months learning java am happy to say I understand the memes
@GuitarSlayer136
@GuitarSlayer136 Год назад
I don't know 2 things about Java but I'm a react dev so my best guess is that the resulting code produces something to the affect of "Could not get newJoke" or am I completely off base here?
@magamboisaac7602
@magamboisaac7602 Год назад
@@GuitarSlayer136 u got it right
@midoevil7
@midoevil7 Год назад
It is much more more that the syntax goodies JDK 21 will come with final release of virtual threads , which is the jvm equivalent for GO coroutines. Also there are multiple projects in place now in the ecosystem to make java more accessible for the cloud. Azul JDK released CRAC - i think- which allow java applications to have startup times in ms , Frameworks are focusing on AOT builds using graal vm, which can also allow applications to have smaller memory footprints and ms startup times. The JDK team is working on multiple refactoring projects for the language, major changes in the type system, objects memory foot prints. But God knows when this will ever finish 😅 Virtual threads took like 5 years in brewing and reviews
@user-wv9tp1tb4r
@user-wv9tp1tb4r Год назад
Thank you! This video is absurdly bad. Like a 16yrs old kid made it. Judging a language by how "hard" is it to write hello world...
@PhaseControlDNB
@PhaseControlDNB Год назад
2:04 that line about the new Java website looking 10 years out of date instead of 20 got me :D
@spidfirechan5830
@spidfirechan5830 Год назад
I love how, the more i know about code, the funnier your videos get
@deideideidei
@deideideidei Год назад
public static void main string args
@elomuskreal
@elomuskreal Год назад
System.out.Println(“Hello World”);
@gwch3481
@gwch3481 Год назад
besides the simplification of boilerplate and structured concurrency(loom), other features coming pretty soon (and some already usable in preview): easy native code interop with foriegn memory access apis and jextract (panama), less devouring of ram as mentioned in the video by storing objects more like structs (valhalla)
@holthuizenoemoet591
@holthuizenoemoet591 Год назад
Can anyone pls point me to a good easy way to install (use in code) 3th party libs in Java? As a Python and JS dev im used to pip and nmp etc
@ninetysixvoid
@ninetysixvoid Год назад
​@@holthuizenoemoet591 Maven or Gradle
@Nick-yd3rc
@Nick-yd3rc Год назад
That's all good on paper and in announcements, but as far as I've given it a few test drives, it's been underwhelming so far. It may seem like a significant improvement over enterprise Java but objectively it's not as impressive when compared to the many modern alternatives runtimes.
@harleyspeedthrust4013
@harleyspeedthrust4013 Год назад
@@holthuizenoemoet591 maven is ok. gradle is a piece of shit. please don't use gradle unless you want a headache
@theshermantanker7043
@theshermantanker7043 Год назад
Don't forget Lilliput, which plans to slash object header sizes by more than half all around
@lordofthewest
@lordofthewest Год назад
Java is a great programming language to learn. It might be the best second language for learners, since while the syntax is verbose, it is specific and easy to understand once you get the basics. Once you know java, it is much easier to pick up something like c++, since you don't have to learn the oo paradigm and memory management at the same time.
@deeplife9654
@deeplife9654 8 месяцев назад
People hate Java because they are not able to learn and find it hard to learn. 😂 L
@kimgysen10
@kimgysen10 8 месяцев назад
As a Java consultant, I'm happy to say that it is easy as f. Delving into external libraries to see what's happening or causes problems is easy, great debugger. Can't remember the last time I ran into unsolvable problems, there are none.
@beantheif3795
@beantheif3795 Год назад
0:39 "because i need that boilerplate to put food on my family" hes not even feeding them, just putting it on them.
@domenicolordi206
@domenicolordi206 Год назад
I'd love to see a SQL."delete from table where id=\{id}" to finally solve every problem of sql injection
@TheDragShot
@TheDragShot Год назад
I could see an javax.sql implementation from whatever abstract class they spin up for this, that takes care of all that. It would be nice.
@midoevil7
@midoevil7 Год назад
THEY ACTUALLY DO! AFAIK The java string templates actually have embedded rules, depending on the template type. So you can have a string template for SQL which will properly handle query parameters. So the templates are not just syntax sugar.
@vinterskugge907
@vinterskugge907 Год назад
When string interpolation is here, you can write a template processor that does exactly that. I am planning to write one that produces a PreparedStatementCreator for use with Spring's JdbcTemplate.
@aleksanderdzierzon6681
@aleksanderdzierzon6681 Год назад
You forgot to mention about virtual threads which is a huge deal! But only when the ecosystem will adopt to use it (so +10 years to wait :D)
@bastienm347
@bastienm347 Год назад
He compares Java to language that like Javascript which does not even have threads. Beginners don't use these advanced programming features
@user-wv9tp1tb4r
@user-wv9tp1tb4r Год назад
New spring will use it immediately
@sickna-sty3244
@sickna-sty3244 Год назад
As a dev who started with Java. I approve of this comeback.
@Gregorius421
@Gregorius421 Год назад
As a dev who started with Java I enjoy these jokes.
@aname4931
@aname4931 Год назад
Same. I can't explain why, but to me, Java feels cosy where JS feels haphazard and python feels brittle.
@coldestbeer
@coldestbeer Год назад
Everyone should learn Java. It teaches programming fundamentals & OOP like no other language.
@daleryanaldover6545
@daleryanaldover6545 Год назад
as someone who played around Java a couple of weeks ago, this made me cry 😭
@unknownguywholovespizza
@unknownguywholovespizza Год назад
​@@coldestbeerI don't like public static void main string args
@catlord539
@catlord539 Год назад
For me, I learned Java in high school and python as a bit of a side project, python seems better for something quick and when you don’t want to worry about the stuff like decoding a video file into frames or something but if you need speed then Java is much better, it is also fun to make stuff in Java, still learning both of them so certain things are easier in either one , even “quick” programs I sometimes make in Java if it feels Easier and since Java is my first language, I will have a soft spot for it but it can be a bit complicated sometimes but at least I got chatgpt to teach me more about it,even if it is a bit outdated at this point
@rockysmitt
@rockysmitt 11 месяцев назад
C++ and Python are neck and neck. That's like having a race where a short track speed skater is neck and neck with a pole vaulter.
@yashkhd1100
@yashkhd1100 Год назад
Java or .c# may sound old but it has all the bells and whistles to write way more optimized and stable apps. Though I believe both Java and C# are very easy to learn still I have seen lot of people who finds it more involved. So all these folks go towards JS where entry barrier is very low. Initially JS gives impression its really fast to develop however any experienced developer will realize while it sounds quick to develop initially but kind of baggage it comes with will create huge issues later if your application grows in size. Simplest example I can think of is in 2023 NodeJS world has yet to settle on which ORM to use either PRISMA or Dizzle or something else where each of them having basic issues like performance, cold start timings etc. .C# and Java world has solved ORM thing from more than 10 years back. They are performant with rock solid stability. I have seen video from jack about React server components and Next JS server performance. A slow language like PHP was able to beat React server and Next JS by huge margin. Java and c# both beats PHP in terms of performance and stability by huge margin.
@Nick-yd3rc
@Nick-yd3rc Год назад
There's always a certain intrinsic complexity in every domain problem. If you pick a tool that doesn't align well with it, you're gonna add overhead complexity emanating from that gap. That said you can transpile to JS from Java, Kotlin and C# too, but it's still best reserved for the back-office apps.
@yashkhd1100
@yashkhd1100 Год назад
@@Nick-yd3rc Ya we can transpile almost every lang to JS but it will create more nusance than it solves. One will need whole set of tool chain like debugger mapping from source lang to JS and what not. It just doesn't make any sense. It's time to get rid of JS as the only player from the web. Let webassebly matures itself which is specifically designed as transpile targets and devs will have many options to choose from.
@Nick-yd3rc
@Nick-yd3rc Год назад
@@yashkhd1100 I wish everyone would just move to PureScript and finally get to enjoy proper frontend DX
@Jac0bIAm
@Jac0bIAm Год назад
I'm not even a programmer or software engineer, but these videos are absolutely hilarious lmao. Keep it up dude.
@sakarhamasaeed9909
@sakarhamasaeed9909 Год назад
Me leaving Apple live conference to watch your video..
@yan-amar
@yan-amar Год назад
Java's still at it, now introducing instant meme methods.
@shantanukulkarni8883
@shantanukulkarni8883 Год назад
Minecraft, here I come.
@lando2011
@lando2011 5 месяцев назад
Minecraft still uses Java 17
@Iopal152
@Iopal152 4 месяца назад
​@@lando2011 No now the latest versions uses java 21
@CodWithGreat
@CodWithGreat 3 месяца назад
​@@Iopal152 how did u download it pls help
@alexwilkinsgames
@alexwilkinsgames Год назад
I remember in community college, I thought I'd venture into computer science and my mom had me try a java class. And I hated everything, and I dropped out of them and told myself I'd never program again. But now I can read java and I like it 😅
@elijahtheo5812
@elijahtheo5812 Год назад
Read, so you still can't code in it?
@deepstatecia
@deepstatecia Год назад
@@elijahtheo5812 He is probably some manager now.
@LumosX
@LumosX Год назад
I am sorry that you developed stockholm syndrome
@turolretar
@turolretar Год назад
@@deepstatecia ewww
@dimitrilesnoff468
@dimitrilesnoff468 Год назад
1:07 « If we rename it to print, we get a perfect language ». Python, F#, Nim and Mojo: What about the semi-colon?
@lawrencedoliveiro9104
@lawrencedoliveiro9104 Год назад
Fun fact: Python allows semicolons in places like that.
@dimitrilesnoff468
@dimitrilesnoff468 Год назад
@@lawrencedoliveiro9104 Didn't know that! Just learnt it as well for Nim.
@lalainaichane319
@lalainaichane319 Год назад
As a newly-converted Java developer, I'm delighted to hear that the language I've invested the last three months of my life in is still relevant !
@realmimak
@realmimak Год назад
condolences
@meltygear5955
@meltygear5955 Год назад
We're literally two!
@Jubinmail
@Jubinmail Год назад
Hey man, of course it's relevant. Any big company I look for a job, has a Java requirement, which is... great 🥲.
@Gaer56
@Gaer56 Год назад
I'm soon to be forced into learning Java from Python (can't find job), what should I do to ease the pain? Programmed in C#,C++ before but I forgot more complex things
@onebigsnowball
@onebigsnowball Год назад
@@Gaer56 There is no pain in java. All the anti java memes come from unexperienced kids who need a scapegoat in order to cope with their lack of skill and feel better about using python edit: ill be honest maven and gradle are painful
@mathmachine4266
@mathmachine4266 5 месяцев назад
The main advantage of Java is that it can track mistakes in real time, underlining things in red that arent allowed, and underlining things in yellow that might be a mistake. Most languages cannot do this, C++ can only do this at compile time, and Python can only do this after the code has already started (unless there's a blatant syntax error, such as unclosed parentheses). A lot of Java's limitations come from the need to continually support this system. That said, I rarely ever use pure Java, I usually instead use Processing Java, which modifies the java compiler ever so slightly, importing a bunch of libraries that are either useful or remove boilerplate (i.e. System.out.println can just be println, due to some automatically imported libraries). Also, it lets me draw on the screen, which is an automatic win for me.
@Oeuvre-Bramon
@Oeuvre-Bramon 4 месяца назад
You can also fraw on the screen with awt
@jackhawkins7285
@jackhawkins7285 Год назад
Just did an assignment where I had to learn Java from scratch the day this came out. The system.our wound me up so much
@Bourn77
@Bourn77 Год назад
As a C# developer, the modern changes coming to Java makes me happy too. It have been left behind for a long time. I leared Java in College, and it has a special place in my heart. That being said, choosing Java for a new project is a huge no for me. C# just does everything better these days. Also if i have to work with Jvm i will probably go with Kotlin.
@HolyRamanRajya
@HolyRamanRajya Год назад
amen, also .NET routinely officialises and inbuilts many things which Java would depend on third party implementations. There is so much support directly from MS because of it.
@andrewrobie620
@andrewrobie620 Год назад
I'm right there with you. I still mostly program in Java for work, but for a long time, it just felt like it was getting left father and farther behind, and for anything new, I'd pretty much jump straight to Kotlin. At least now it feels like it's starting to catch up again.
@bastienm347
@bastienm347 Год назад
What framework for web development do you use in C# ?
@HolyRamanRajya
@HolyRamanRajya Год назад
@@bastienm347 420 Blazor it
@noname78520
@noname78520 Год назад
@@HolyRamanRajya true
@Ryuujin1024
@Ryuujin1024 Год назад
Glad to see Java evolving, but im sticking with Kotlin. All the joys of a modern language and proper handling of nullable types.
@chatGPT7
@chatGPT7 Год назад
Optional doesn't cut it?
@AbhinavKumar-dl2ph
@AbhinavKumar-dl2ph Год назад
Even I like Kotlin but the sad part is Kotlin is replacing Java only in Android development and nowhere else
@dim4gg
@dim4gg Год назад
Kotlin with it's companion objects and 1mln modifiers is a joke by definition 😂
@WolfrostWasTaken
@WolfrostWasTaken Год назад
@@chatGPT7 Optional itself can be null which defeats the entire purpose sometimes because stupid (very stupid) programmers will return null directly instead of the empty optional... It's way better in Rust where it's a first-class citizen
@chatGPT7
@chatGPT7 Год назад
@@WolfrostWasTaken interesting point 🤣
@mohamedelidrissi810
@mohamedelidrissi810 Год назад
Java is the new guy she told you not to worry about
@nathanfrancisco-ribeiro6649
I remember trying to do Hello World from scratch on an online compiler, I immediately gave up on the language and never touched it again
@pratikwankhede6218
@pratikwankhede6218 Год назад
What people are forgetting is that the biggest pain point like boiler plate code can now be managed with Copilot and AI assistant code tools.
@henson2k
@henson2k Год назад
but it still polluting the source files
@Syndiate__
@Syndiate__ Год назад
Java can be a nice language if you know what you're doing (and if you're using modern Java). However, it's dangerously easy to write really ugly and bad code really quickly. Just to clarify, this, of course, applies for all languages, but it's *ESPECIALLY* true for Java. (And a few other languages as well, i.e. JS and Python)
@jozef_franek
@jozef_franek Год назад
as in every language
@yashaakimov5378
@yashaakimov5378 Год назад
You can say it for almost all modern languages.
@Comyupower
@Comyupower Год назад
thats so wrong Pythom is what yo say
@TheFelipe10848
@TheFelipe10848 Год назад
So true, I think it's in large part due to Java enforcing abstraction to a large degree
@Syndiate__
@Syndiate__ Год назад
@@jozef_franek Well yeah of course it applies for all languages but it's ESPECIALLY true for Java, which is why I pointed it out (Probably should've put it in the original comment)
@Assassxndev
@Assassxndev Год назад
I'm going to be learning Java at uni next year, so this might be a plus
@kirantechnophile7852
@kirantechnophile7852 Год назад
University always teaches you the old methodologies. Better be a self-taught.
@SirDamatoIII
@SirDamatoIII Год назад
It’s not. I hated it. Still do.
@toothyeye
@toothyeye Год назад
GL learning Java 8
@yjlom
@yjlom Год назад
@@toothyeye Java 8? since when have unis moved on from Java 7?
@Rwko.
@Rwko. Год назад
Don't listen to anyone man. Java is fun to get to know ,it has a lot of things that it can teach you and its always great to have knowledge of one more language. Make sure you learn it correctly and then you can decide if you like it or not!
@CricketThomas
@CricketThomas Год назад
C# is enterprise and is not slow in adopting new features. Literally it should be used by startups before node
@test-rj2vl
@test-rj2vl Год назад
Node is worst thing that happened to web development.
@CricketThomas
@CricketThomas Год назад
@@test-rj2vl piggybacking off of that, the worst thing that happened to desktop development was electron
@DhirenDash
@DhirenDash Год назад
OOP design patterns are not unecessary my friend. When you look at huge backend projects in Enterprises, its these OOP patterns that help us understand the application logically in an otherwise chaotic codebase.
@devswell6538
@devswell6538 Год назад
I’ve seen it both ways. Depends on your data tbh. But functional serverless functions in a microservice infrastructure can be just as clean and easy as a monolith oop project sitting on a massive app service instance. And vise versa.
@bgdgdgdf4488
@bgdgdgdf4488 9 месяцев назад
Just because someone tries to use an unecessary concept doesn't make it necessary. Programming is not a yes-or-no question. If it was, only 1 programming language would exist. People have been arguing about the "right way" for decades
@julkkis666
@julkkis666 Год назад
Java with Lombok is fine. you don't have to write any broilerplate. just type @Getters or @Data or whatever it was, and you have your getters and setters automatically, or if you write @Builder, you don't have to write constructors and you can use the builder pattern to make all your fancy little objects! it's so much fun :^)
@realharami
@realharami Год назад
Thank you for sharing this nice project Lombok
@ianmarteens
@ianmarteens Год назад
Java with Lombok isn’t Java anymore. There was a time, the Java guys used to criticize C++ because of macros. Lombok is like macros, but without the source code at hand. And the funny thing is that conditional compiling still raises eyebrows in Java people. Lol!
@julkkis666
@julkkis666 Год назад
@@ianmarteens you can always just look at the generated class files of you want to see what the generic getters look like
@HrHaakon
@HrHaakon Год назад
​@@ianmarteens Compiler macros are NOT the same thing as C style macros. Holy shit bro.
@ronanmullarkey
@ronanmullarkey Год назад
You can get rid of the brackets, the semi-colon and even the file: groovy -e 'print "Hello" '. Groovy did this on the jvm almost a generation ago, before kotlin and swift stood on it's shoulders.
@DavisTibbz
@DavisTibbz 3 месяца назад
Java has jshell , since jdk 15
@thejonte
@thejonte Год назад
Amazing to see a new Fireship video!
@gamingfox9845
@gamingfox9845 Год назад
A minute of silence of all the enterprise Java Devs who still run Java 8 or older because of customer demand who will not get to use these new features until retirement. I feel you.
@MaxGillard-03
@MaxGillard-03 6 месяцев назад
actually just learned java and I like public static void (String args[]) when you understand what each word means it makes a lot of sense
@magnetdysfunction9889
@magnetdysfunction9889 Год назад
I've been using all of the features mentioned in this video in my work for at least 18 months... in C#.
@IamOmgPhil
@IamOmgPhil Год назад
We killed all our java apps at work and running everything in c# best switch ever, and you dont need 1000 frameworks like spring just to do the basics its nice to see to get features from C# into Java, like the string thing
@johneurich8747
@johneurich8747 Год назад
2:04 I Laughed so hard on that
@Personaless
@Personaless Год назад
My previous job I left a month ago just started using Java 11 for some apps instead of Java 8. But we also used Groovy, which cut down on so much boilerplate and gave String Interpolation. So life wasn't that bad.
@kirayamato6128
@kirayamato6128 Год назад
groovy is greate language. also it's framework grails.
@ko-Daegu
@ko-Daegu Год назад
@@kirayamato6128 we moving away from groovy grails to spring which’s better and more secure get updates stop using grails bad exploits this is the only thing you introduce to production
@inf008shorts
@inf008shorts Год назад
What! You work with Java 11! Java 20 is there. You could have just looked for a job in Java 19. If it's not available, I can undoubtedly say, PHP and Java have the same fate. 😟😟 Edit: I learnt Python 3.13. Not even fully developed yet. (Because Python 3.12 is not even released. So, till then I would learn important languages like Typescript, HTML, Sass, C, C++ and Java.)
@Jarikraider
@Jarikraider Год назад
Fireship: "And actually why do we even need a main function in the first place?" Me: *"STOP!"*
@Hellenic_Empire
@Hellenic_Empire 2 месяца назад
Tbf I haven't done any Java specifically, but I'm enthusiastic af about the whole "Everything is an object / class" kind of programming. Idk it makes a whole problem twice as easier in my head (making any problem into a set of relations between objects)
@FiksIIanzO
@FiksIIanzO Год назад
After years of C# just copying everything Java does, it feels good to finally see years of Java copying everything C# does.
@Gregorius421
@Gregorius421 Год назад
TBH after C# was copying Java for years a decade has passed with C# leading the race without Java even noticing C# is ahead.
@steffenrumpel2784
@steffenrumpel2784 Год назад
@@joshman1019 After having jumped into PowerShell the last couple of months I had to learn about the mess the dotnet ecosystem has gotten itself into (dotnet framework, dotnet core, dotnet standard, etc) the past couple of years. To me, it feels like to be en par with the mess surrounding the Java runtime. I love and hate them both at the same time. :)
@HolyRamanRajya
@HolyRamanRajya Год назад
@@steffenrumpel2784 Haven't heard of framework and standard in years now.
@HolyRamanRajya
@HolyRamanRajya Год назад
@@Gregorius421 Anders Heiljberg is simply GOAT
@PerroConChaleco
@PerroConChaleco Год назад
yeah but all corpos who use java also make sure to use ancient java so it doesn't really matter
@dotpy7928
@dotpy7928 Год назад
Imagine some big bank CEO occasionally watched this video then came to work next day and say an average Java developer Peter to rewrite all the big bank app to the new Java so it is more readable and cool😎
@AbhishekKumar-vk6rp
@AbhishekKumar-vk6rp Год назад
If you are pretty good with these in java. You know its the best - Annotation processing - Generics
@davidparker5530
@davidparker5530 Год назад
3:24 I should point out that the meme is a bit harsh, because in this case, it isn't correct to treat strings as arrays of characters, they are not. In Java, the String class is encoded using UCS-2 aka UTF-16. In Java, a character (char) is a 2-byte type that used to represent a Unicode UCS-1 code point. However, that was only sufficient when the number of code points was less than 65536. Now Unicode has 1+ million. So UCS-1 was extended into UTF-16 which allows for some special pairs of 2-byte chars to be combined together into a 4-byte character, called surrogate pairs, to represent characters beyond the base multilingual plane. In these cases, if you just index a string as an array and get out a char, it might only be half the bytes of a unicode character, and you will experience bugs. Just see how many Java "reverse string" methods fail when using emojis. All this being said, Java String.charAt() is also busted for the same reasons stated above. Really, what we need is an object of a class that represents a "character" in a more abstract sense, regardless of underlying encoding or number of bytes in the buffer where it lives.
@viktorstojanovic9007
@viktorstojanovic9007 Год назад
Just use c#
@oseitutu598
@oseitutu598 4 месяца назад
Ew
@16982161
@16982161 Год назад
"or more accurately anyone who's forced to learn Java" xD There were a lot of exciting things happening with Java game dev in the early 2010s that made it really attractive as a kid learning programming for the first time who loved video games. Runescape and Minecraft were things to aspire to and you had Cherno making his first 3d game development series in Java. I remember trying to set up eclipse to work with LWJGL for a whole week.
@16982161
@16982161 Год назад
@@rewrite1239 I am subscribed to him but didnt realize he had an older lwjgl series! It looks pretty impressive. I also watched bennybox back in the day
@What_This_Be
@What_This_Be Год назад
​@@16982161 Y'all just flashed my later teenage years before my eyes holy shit the nostalgia is real
@onebigsnowball
@onebigsnowball Год назад
This is true, I still make games with LWJGL to this day
@Ikxi
@Ikxi Год назад
1:05 also remove the semicolon, for ease of use
@realquotesfrlol
@realquotesfrlol Год назад
NO
@cornelmasson4610
@cornelmasson4610 Год назад
After 20 years of Java, I finally succeeded in moving to Python four years ago. I'll never go back.
@ChrisP872
@ChrisP872 Год назад
I love the thumbnail for this one. That little guy has the perfect facial expression for skepticism.
@rubennijhuis
@rubennijhuis Год назад
"C# introduced top level statements in 2020 and maybe in another 10 years Java will get there too" Tbh I think there is a still a lot of jokes we can make
@gogokowai
@gogokowai Год назад
So Java was too hard to learn because of the boiler plate class definition? I guess so new programmers can just skip learning what classes are? Not that they typically would, it would just be boiler plate jargon just like "void main()". I don't get the logic since it's generated by templates anyways.
@blackplaydoh3522
@blackplaydoh3522 Год назад
I had started my programming journey by learning JS online, it was a horrible time with only benefit that I learned how to sit in front of a computer for hours on end. I switched to C, and after about half a year of project-based learning in bootcamp conditions (Ecole 42 program), I picked up Java because it was in high demand among local employers. Half a year later I got my first job in software development. During my time there I got to work with Java 6-17, Kotlin, Groovy, Go, C++ and (regrettably) JS/TS in production. What I realized is that all languages have their own flaws and benefits. For Java, its wordiness is somewhat of a plus when it comes to enterprise development, because it's somewhat easier to understand someone's intent behind their code. The downsides are many, don't get me wrong: RAM usage, many many questionable decisions of the standard library, quirks or breaking changes when migrating from one java version to another. For the past year I've been coding exclusively in Kotlin in production (as well as using python to solve leetcode), and I quickly realized that Java, as baffling as it is, has much better and stable IDE support and Kotlin's frameworks are still years behind of Java's and you cannot just write pure kotlin in production 100% of the time. Recently I came back to Java (20) on a low-latencty trading project and I'm pretty happy with it, honestly. Also, having touched many build systems, I can safely say that gradle is probably one of the best builders out there.
@keyser1989
@keyser1989 Год назад
Does Ecole 42 have any online programs?
@xellr
@xellr Год назад
Hi mate, I am learning java, could you please tell me what should I focus on, to be able to work on low-latency jobs? and btw, so gradle is bettter than maven?
@Mirage2020
@Mirage2020 7 месяцев назад
​@@xellr yea Gradle is better than maven, maven it's like the legacy tech, Gradle it's far more easy to learn and write because the use of XML annotations labels on maven is awful.
@adianblabla
@adianblabla Год назад
In 2015 I took a job at an outsourcing company for a full-stack developer, for a banking group. The project I was involved was using: Oracle SQL+Java+HTML4 stack. In 2019 I left the company and felt way dumber than at the begining of the job. That's because at the start of the job I learned Oracle SQL, Java, Spring, Hibernate....but after I've learned them I only used like 1/4 of the knowledge and since the systems didn't upgraded to newer versions there was no need to learn new features. Also the security system was so rigid that we weren't allowed to install tools we didn't used for company's needs....
@MiroslavMydlo
@MiroslavMydlo Год назад
As ProgrammerHumor taught me, the quality and usefulness of a language is determined by how small the hello world program is. I mean this is the single most important feature in any language ever and it's especially useful in any real world application, like f.e. when working in a bank. That's why Java just now jumped up several levels! I mean yeah there are virtual threads and all that stuff in Java 21 but hello world is where it's at and what you'll use the most in any programming job
@FullOvellas
@FullOvellas Год назад
The memes were... kinda bad. I've been held hostage of this language for almost two years now and it does have some meme potential, but not as much as JavaScript or Python. Even the one about complex design patterns doesn't make sense, as no one with beginner-to-intermediate knowledge of the language would write like that. They would use lambdas or something lightweight like that. This rant was kinda sincere but kinda copium too. Long live the boilerplate.
@zahawolfe
@zahawolfe Год назад
I started in university with Java, and after several years of a break, am now at a startup using java17, and it's honestly great. Having intelliJ and modern java language features makes writing java actually pretty great if you keep things simple (i.e. use minimal inheritance and factories). Nullability and immutability (records need builders) are still the two biggest issues with java in my opinion, but so much else has gotten very good.
@abhilashkr1175
@abhilashkr1175 Год назад
Trust me we will still run java 8 for another decade
@vadiquemyself
@vadiquemyself 5 месяцев назад
oh yeah, I always knew the public static void main was the main (or maybe the only? public static void only) problem in java
@DanielRode
@DanielRode 5 месяцев назад
"To put food on my family" 😂 good ol GW Bush
@jayshartzer844
@jayshartzer844 Год назад
Kotlin has all that, more, and can be used on the Java 8 (1.8) JVM along with 2-way interop with Java code.
@terpila
@terpila Год назад
Kotlin is my favorite lang so far. Already using it in most of my projects
@theforeskinsnatcher373
@theforeskinsnatcher373 Год назад
to be honest public static void main string args is still better than what python has
@vectoralphaSec
@vectoralphaSec Год назад
Lol no it's not. It's not better at all.
@wybren
@wybren Год назад
​@@vectoralphaSecin my opinion it does. Java's version is long but very consistent. Python suddenly throws in a couple of magical global vars you can use without explaination.
@koduflower2000
@koduflower2000 Год назад
ALL HAIL JAVA, THE MASTER OF ALL PROGRAMMING LANGUAGES!!! I LOVE THIS VIDEO BRO!!! ❤
@dakshitmohan4651
@dakshitmohan4651 5 месяцев назад
Am I the only one who thinks Java syntax is beautiful and is calming to my OCD??? 😭😭
@mozzarella35
@mozzarella35 Год назад
“I need that boilerplate to put food on my family” Best quote from this channel
Далее
小路飞嫁祸姐姐搞破坏 #路飞#海贼王
00:45
When Goalkeepers Get Bored 🤯 #3
00:27
Просмотров 3 млн
Women’s Celebrations + Men’s 😮‍💨
00:20
Просмотров 3,3 млн
Java 21 Is Good?! | Prime Reacts
27:08
Просмотров 240 тыс.
I built 10 web apps... with 10 different languages
14:23
Reality of Being a Programmer (No One Talks About)
2:52
What is the Java Job delusion?
12:23
Просмотров 127 тыс.
10 weird algorithms
9:06
Просмотров 1,2 млн
Linus Torvalds on why desktop Linux sucks
11:07
Просмотров 1,4 млн
Naming Things in Code
7:25
Просмотров 2,1 млн
Career Advice For A World After AI
23:07
Просмотров 175 тыс.