NANOWAR OF STEEL - HelloWorld.java (Source Code Video) | Napalm Records
HTML-код
- Опубликовано: 19 янв 2025
- Live album "XX Years Of Steel" out this Friday!
Order here: lnk.to/NoS-XX-...
Mixed by Christian Ice at Temple of Noise Studios
Video by LyricVids.com
Official HelloWorld Repository: github.com/Nan...
NANOWAR OF STEEL LIVE 2025
European Tour 2025
Co-Headline Tour w/ Dynazty
21.02.25 AT - Vienna / Simm City
22.02.25 DE - Leipzig / Hellraiser
23.02.25 DE - Stuttgart / Im Wizemann
24.02.25 DE - Hamburg / Kaiserkeller
26.02.25 FR - Paris / La Machine du Moulin Rouge
27.02.25 CH - Pratteln / Z7 Konzertfabrik
28.02.25 FR - Lyon / La Rayonne
01.03.25 DE - Lindau / Vaudeville
02.03.25 DE - Nuremberg / Hirsch
04.03.25 DK - Aarhus / VoxHall
05.03.25 NL - Tilburg / 013
06.03.25 DE - Frankfurt / Zoom
07.03.25 PL - Wroclaw / Transformator
08.03.25 HU - Budapest / Barba Negra
09.03.25 PL - Krakow / Kwadrat
10.03.25 DE - Berlin / Columbia Theater
12.03.25 BE - Antwerp / Zappa Club
13.03.25 TBC
14.03.25 NL - Drachten / Iduna
15.03.25 FR - Strasbourg / Le Molodoi
16.03.25 TBC
Nanowar Of Steel online:
Website: www.nanowar.it/
Facebook: / nanowarofsteel
Instagram: / nanowarofsteel
Tik Tok: / nanowarvevo
Rage against the Java Virtual Machine
JVM = friend
No rage required :D
Omg ahahahahah good one
@@SyntheticFuture jvm == friend
implicit nulls != friend
^^
Rage Along With The Java Virtual Machine
@@SyntheticFuture Since Oracle took it over, the JVM that can stab you in the back with minor version number changes and burn your stack to the ground. run anywhere, anytime? Mwuahahahahahaha
Officially we have a new Metal subgenre, Dev Metal 😅
Laughing hard
Made my day,... a minute in, and I can barely type
😂😂😂
totally underrated comment
Kernelcore
I like the background music in this tutorial
best tutorial background music ever!
I like the background tutorial in this music
I think was a backend music....
@@realshurikby top comment! )
What is original Manowar track? Or it's by Nanowar?
Syntax error at 1:24 : missing semicolon after 'pippo++'
For me this is the winning comment
It is in the code screen though, just not sung
That's why this video stops there every single time with an error!
@@misiopuchatek152The error is actually a Null pointer exception. I have not programmed Java for a long time, but a missing semicolon should not result in that error
That's ok, JVM will manage!
3 billion devices can play this song
Genio
And they're all infected!
And still 3B devices could play it 30 years in the future
Stupenda!!!
Write once, run everywhere.
Every IT and Programmer is going to be sharing this around todayyyy
I sent it to 4 different people.
Will do tomorrow
To the company chat!
That's why I'm here! Sharing further)
It's a must
As a programmer and metal fan, I only now realized that an entire genre of metal has been missing this entire time!
Same here! System.out.println("Fricking love this!"); 😂🤣
CODE METAL!!!!!
Yes! We need this! (fellow metal head)
Move over nerdcore. It's time for programetal.
type safety?
@randysewell3199 I suggest watching the Video "The Art of Code" by Dylan Beattie. You can skip towards the end to listen to a great metal song or you watch then entire hour to have a very entertaining presentation AND a great metal song ;)
I like how Eclipse takes 30s to start in the beginning
The bar going back down really hurt my soul.
that must have been eclispe in the 90's... today it loads quick
This is how I learned that people actually still use Eclipse
@@bjbegui I see that loading screen every day. No, it hasn't. Visual Studio and VS Code start in a second. Eclipse still takes at least 20.
@@Nyerguds which operating system are you using
you can store a Helloworld app in a java war file. This will be the smallest war file and you would be able to say that it would be ... a nano war file
Winning comment.
And if you name your executable steel.exe, it'd be a nano war of steel
Sound like an invitation for a serious malware
You could try to read it with the Nano text editor as well
😂
This is the only song that probably won't be translated to French, Italian, German, ..., but instead is translated to Python, C, Fortran, Bash, Matlab, ...
The Bardcore version of this is written in COBOL.
@@Nyerguds XD
Well I guess some French nerds might try to translate it into LSE...
I need a rust version! As everything should be rewritten in rust!
@@worldpotato7091 i guess that _would_ make it more "metal".
Thank you for bringing `int pippo = 0` to the international attention.
Pippo being Goofy, for our international friends.
Hi, is it related to Pippo Inzaghi, or another famous Pippo ?
It's just pippo. I'm not sure why, but it's like "foo" in most Italian programming courses.
Per se, Pippo is just a nickname for people called "Filippo". And, as pointed out, the given name of Goofy in Italy.
It's meant as the Italian "translation" of Goofy, as it usually goes with pluto and paperino (Donald Duck)
pippo is an extremely based variable name, everyone should use it instead of foo bar trash
The fact they even created a repo on github just shows the deddication they had when producing this song
s/producing/programin/g
At least is what my brains read
I just found the reference to a deploy .war. As a sysadmin I loled so hard.
I love how they have a “Performance considerations” section in their readme and it lists the time and dates at which they perform. ^^
@@ThePC007 genius
Anyone compiled it yet?
The only band i know that RELEASE it's own SOURCE CODE
Bravo.....👏👏👏
With actual docs!!!
The world needs more FOSM (Free and Open-Source Music)!
@@InventorZahran FOSS still work: Free and Open-Source Song, but I agree FOSM works too!
@@Kaizzer They even published their performance considerations in their README.md… And it’s a list of dates and places where they’ll perform. That’s amazing!
We used to say Java was "Write once, test everywhere."
We can now say: "Write once, play everywhere."
Good one
yes, write once and run for your life.
he said "test everywhere" not "run everywhere" ahahah
"Write once, debug everywhere"
"Write once, fail everywhere"
Got fired of work a couple of weeks ago.
Started a Java course to get a better job.
Nanowar of Steel releases a .java song.
The universe is telling me it was a wise decision!
Good luck tolerating all the insanity of Java. It has some merits as well to be fair.
Python is better for career opportunities though
consider also Kotlin, mate!
@@nanowarVEVOand a worse language
Bring fired was a wise decision?
As a non-English programmer this is the first English song that I fully understood.
😂
definitely didn't expect this to slap so hard
I think I finally learned some JAVA scripting.
@@narrator69 that's not JavaScript! It's totally different!
@@narrator69
Aaaaah Java Is not scripting!
(Until you don't use BeanShell)
Underestimated the new Nanowar single?
Rookie mistake!
best metal band in the HELLO WORLD
As a high school programming (JAVA) teacher, I have to write - Thank you very much!
You are amazing!
Welcome, class. Today, we're gonna start with some music!🤘
Let the world know the mighty variables of Italy: pippo, pluto, paperino, tizio, caio, sempronio 🤘
what are those refering to (for non italians?)
@@TheMusicalPotatoesrandom people you don't know the name of. Like "average Joe"
@@TheMusicalPotatoes it's the equivalent of foo bar
@@TheMusicalPotatoes half of them are the names of Disney characters (goofy, pluto, donald duck) hardcoded in the memory of our childhood, the other half is the italian equivalent of Tom, Dick and Harry.
Personally i prefer gino pino rino lino and so on but pippo pluto and paperino are big classic!
Saw a Nanowar of Steel video popping up in my feed - expected greatness. Saw the title, expected even greater greatness. Watched the video, saw the greatest greatness. Found the effing github repo (! - seriously, WTF!?) and bowed my head to the mother of all greatnesses! Great! Ness! \m/
The "Garbage Collector" part should have stopped the song a second!
JVM didn't collect before the null pointer exception.
STOP THE WORLD YEEEEEEEEEEEEEEEEEEAAAAAAAAAAAAAAAAAAAAAHHHHHHHHHHHHHHH!!!!!!!!!!!!!!!!!!!!!!!!!!
Not with this number of objects. Also While older GC did have problems with a medium number of objects, creating this meme, more modern GC like ZGC or Shenoandoah are way more fluid and less stop the world.
Not really. Both Z and Shenandoah don't stop the world when collecting
It depends on the JVM version I suppose
My new anthem since "dont forget of put a WHERE on the DELETE FROM"
you are data BASED
The Oracle of Glenrothes approves this message.
As a java programmer, I didnt expect that
But did you catch it?
@@SokarDWunderrated
So it is the Exception!
To try understand it, I catch it, finally
Oh god you code Java
as a pioneer in the source code singing space, this goes hard
FUCKING RANDOM TYPEK???? IN A NANOWAR OF STEEL COMMENT SECTION????????
As a software developer and metalhead, I just had the absolute nerdgasm 🤤🎸🎉🤘
the last three seconds of this song made it make sense
JAVA for Metalheads, I love it. MORE
Metal for Javaheads, shurely?
@@stupittt Dont call me Shirley
I was wondering if NullPointerException would make it into the song and it did and it was glorious
They didn't add the line that actually caused it though.
The NullPointerException interrupted song execution as the line throwing the exception was being sung by the descant.
@@Nyerguds They did!
String joeyDeCaio=null;
joeyDeCaio.length();
@@Nyerguds 3:45 String joeyDeCaio=null;
3:55 joeyDeCaio.length();
@@TransferPoint9346 now i need to see a song called try catch that corrects that exception
As a developer that loves power metal, thank you. I mean it from the bottom of my undefined
I dunno, this sounds more like Dev Metal to me 😁
@@Nyerguds Gonna start a band called Stack Overdrive
So _this_ is what it means to be a rockstar developer!
There are two kind of programmers in Italy: programmers who used "pippo" as variable at least once and programmers who are liars.
I never had used pippo once
And im not lying
I must throw a new exception my friend, and it will probably be unhandled
and the others who used "pluto"
@@tommasomaruzzo3341 Don't forget the third option "Paperino".
@@Ht-60 Perhaps you didn't used it as variable, but you definitely wrote it in comments. Ha!
This comment is my first time writing down "pippo". It looks like I'm a liar.
What is pippo btw? I'm not experienced enough.
Now we need more .java songs and call the album Java Crash Course
LOL 🤣
This has to be the most perfect song for a lyric video!
it is a "source code" video by the way
While it might not be „open source“, it’s definitely „source available“
@@elvithmaforWhat would Open Source Lyrics look or sound like? 🤔
@@kaneadams5191 Packed with font and background images.
I'll never again forget the semicolon...
If you have a hard time with it, you might need a semicolonoscopy.
indeed 😂❤
@@idanbhk3875 Uhm.... Guess I'd prefer a headset 🎧
Not only will you no longer forget any semicolon; you are now mentally programmed to hear "semicolon" every time you type it.
Come code with us on our 2025 European Tour with Dynazty
21.02 - AT, Wien, Simm City
22.02 - DE, Leipzig, Hellraiser
23.02 - DE, Stuttgart, Im Wizemann
24.02 - DE, Hamburg, Kaiserkeller
26.02 - FR, Paris, La Machine du Moulin Rouge
27.02 - CH, Pratteln, Z7 Konzertfabrik
28.02 - FR, Lyon, La Rayonne
01.03 - DE, Lindau, Vaudeville
02.03 - DE, Nürnberg, Hirsch
04.03 - DK, Aarhus, VoxHall
05.03 - NL, Tilburg, 013
06.03 - DE, Frankfurt, Zoom
07.03 - PL, Wroclaw, Transformator
08.03 - HU, Budapest, Barba Negra
09.03 - PL, Krakow, Kwadrat
10.03 - DE, Berlin, Columbia Theater
12.03 - BE, Antwerpen, Zappa Club
13.03 - DE, Bochum, Matrix
14.03 - NL, Drachten, Iduna
15.03 - FR, Strassbourg, Le Molodoi
16.03 - TBC
Tickets & info on tour.nanowar.it
We're all going to lose our minds in TBC!
Check out also the official song repo: github.com/NanowarOfSteel/HelloWorld
@nanowarVEVO: if you are serious about that coding part, I organize the Belgian Java User Group. If you are in town a day earlier, would love to have you join one of our events.
l@@tomcools6244let's do it! one of us is a Java dev, another is a python/C/C++ dev
cosa avete contro la vostra patria?
One of the most delicious guitar tones and riffs I've heard in a while. The epic vocals and super clever lyrical concept only added to it. Super awesome!
And the enthusiasm they scream "while(pippo
So refreshing to listen to heavy metal after a long hiatus. It reminds me why this genre has been, remains to be, and will continue to be so popular - it is because it is beautiful. It is not perfect, and it should not be, we love it.
10 PRINT "THIS FECKIN ROCKS"
20 GOTO 10
Very basic comment.
wow that is old school
@@nanowarVEVOwrote in a Commodore 64
Goto Statement Considered Harmful
@nanowarVEVO
ldy #$00
LoadMessage:
lda message, y
sta $0400,y
iny
cmp #$00
bne LoadMessage
message:
.db "Hello World!", 0
You are the first band that I followed on Github :D The documentation rocks as well! Any chances for concert in Stockholm?
Can't wait the assembly version 🤣
lyrics on github 💀
A C++ version please! Love this!
Yes, it will also include a header file
AC++/DC++
Rust (in peace)
Perl jam
@@idanbhk3875 Nanowar of Steel, assemble(r)!
@@idanbhk3875 "Il Python non è un serpente"
A classic italian song
Problem is, if it gets a memory leak because you need to juggle your constructors and destructors properly, the video may never end...
I have sent this to a dozen different chats full of nerds and programmers in the last week. EVERY time, the reaction is “I didn’t expect that to be so good”
Seems like Nanowar knows their target device, errr, audience
Headbanged so hard to this while playing on repeat.
Then noticed the lack of SEMICOLON at 1:25 .
Continued to headbang anyway, just fueled with rage.
10/10.
Don't worry, it's there in the GitHub repo.
jamming this while doing my job as a software engineer. My job has never felt so badass!
Clicked on it cos I'm a software engineer, lyrics began and spat out my coffee xD
This awakened my JDK
FavouriteSong fav= new FavouriteSong();
List favourites = new ArrayList();
favourites.add(new NanowarSong("HelloWorld .java"));
I love that this song exists. I haven't coded in a while, even longer since I spent time debating which List implementation to use. ArrayList is a bad idea, if you expect to be removing internal elements with any frequency. I think I'd probably end up doing a generational type approach like the GC uses, LinkedList for the frequently edited "candidate" generation. A lot of songs hit hard for a week or so and then fade, at least for me. Apparently this one didn't!
Finally SFW music for programmers. Could you share the repo?
Of course github.com/NanowarOfSteel/HelloWorld
@@nanowarVEVO OOOOOOOOOOOOOOOOOOOOOOOOOOOOH!!!!!!! 😍
¿Did they put it? RUclips has removed that comment because it had a link. I know it happened because the other person in the comments is saying "OHH" to them.
There's a link to github in video description.
@@-Rubenyes, they did it
Pure gold. We devs will cherish this for decades to come.
Now that the whole world knows about Italy's best kept secret, "pippo", I expect any tutorial in any language from now on to use it instead of "foo".
"pippo" is one hand tapping. This is the original dev reason about it. "Foo" is two hand tapping (unless you have huge fingers) :)
The best java training course I ever found about a program language.
As a java developer, and metal fan, this is like two parts of Universes that were never meant to meet, and yet they do xD
Metalhead programmer here…
I can finally die in peace !
Thanks guys for this pearl of wisdom !
JoeyDeCaio is null !!! 😂😂😂
Guys, each song is more unpredictable than the last. You really are my favorite band by far. I would love to see a collaboration with Tom Cardy; even though your styles are different, it would be a very interesting mix. You both are capable of playing any musical genre, you'll figure it out
For the last 20 years I've witnessed many metal themes and genres, this one is one of my favorites without a doubt
Italian -> English -> Spanish -> Hebrew -> German -> Programming
The linguistic evolution of Nanowar is fascinating!
Valhalleluja has Swedish and Latin, too.
This video perfectly describes a typical Italian developer metalhead genius.
Outstanding content. I had no idea I needed this in my life, well played.
Sono entrato in loop. Me la devo ascoltare a nastro fin che pippo < foo.
I just updated Eclipse to its latest version, and stll works!!!!
The best part it still compiles incrementally!
Great song, would really love to hear a SQL at some point in the future!
I want more bands like this to teach cool stuff like this.
The Strings sound overloaded
Strong song Nano... Well, Nanotechnology!! ❤😂
I'm convinced that at least 50% of why this song was written was to see what semicolons and brackets look like in the metal font
I only found this now, but I need more of this! Nanowar, please make more Dev Metal!
Thanks for including my name "Pippo" in this song. :D
for English-speaking programmers in Italian pippo is goffy in English and is constantly used as an example to student programmers while "tizio" is Dude in English
They really nailed how a NullPointerException feels. Rocks me to my core. Like this song.
Geni. Siete dei geni e continuate incessantemente a dimostrarlo. Il Coding Metal è ciò che non ci meritiamo ma di cui abbiamo bisogno
I'm a Software Engineer , you've dropped this for my 50th birthday... coincidence? :D
Happy (late) birthday!
I've been working with Java for 20 years and I'm a metal fan. This song will replay in my mind for decades! 😂😂😂
Das ist tatsächlich etwas, das ich von einer Metalband nicht erwartet hatte. Ich bin beeindruckt.
Wir sind auch beeindruckt!
@@nanowarVEVO Your code only crashes on purpose! With a 4-line comment before it!
Geht mir auch so
made my day!
need to sing it like a mantra before every scrum meeting
Noooooo, sto impazzendo! È la canzone definitiva!
❤
Теперь на каждую точку с запятой в коде в моей голове звучит "SEMICOLON!!!"
Теперь живите с этим, уважаемые разработчики!
😅👍
надо сделать фоновую аппку, которая для настроенных редакторов кода будет проигрывать SEMICOLON при вводе, можно ещё добавить OPEN/CLOSE BRACKETS
Главное чтобы она не орала NULL POINTER EXCEPTION!!!
New album for programmes only! Each song in different programming language! Bonus song in assembler!
I would suggest the intro in binary
Assembly would be siiick!
And one in Brainfuck!
COBOL can actually be made to rhyme
They could add a black metal song in Malebolge
I did not think power metal could get any nerdier
I've seen some people around here describe it more like... dev metal 😎
this is the best thing that's ever been on the internet. Thank god, we're done now. Somebody make sure to turn the lights off on the way out.
also ... I really want this font
Code-Metal! My new favorite Genre :D
for non Italians, "pippo" is our default variable name. It means "Goofy", yes the character
PURE LA REPO DI GITHUB IO VI AMOOOO
the lyrics really speak to me
Everything in the universe has lead us to this point and that's a good thing.
Dev Metal 🤘🤘
I honestly have no idea what any of you are talking about but I'm here for the boys
Never thought I would see a music video with a link to a github repository in my life.
Brilliant! I appreciated that true Norwegian NullPointerException at the end!
I’m a Sun hobbyist (i own a few SPARC-systems) and i approve
And yes, they all run Solaris ofc
True Sun hobbyist reserve, at least, one of the older SPARCs for dual-booting SunOS 😜
First time I have an earworm in code. Thanks for that Nanowar. while (song == true) { this.user.happy = true; }
How dare you leaving properties of this.user unencapsulated??? (joking of course :))
Could be a fun test question. Under what circumstances is this code appropriate? Way too many developers just shrug and make every property protected, in my experience.
This song has done more for Java goodwill than video tutorials in broken English or the plentiful dev jobs maintaining enterprise Java spaghetti codebases.
Aw fuck... now interviewers will start asking us to sing as well during code tests...
My time has finally come! And they said I was crazy for singing out my code all of the time!
This is soooo good!
I love how the lyrics in Nanowar songs are so batshit that they decided to just write a program and sing it out and the music goes hard as fuck. And it works because they have decades of experience with it
What's next, a shampoo ingredients list while taking a number 2? Genuinely asking
why not
wait, *WHAT?!?!?!?!?*
They are reading the comments of this video, thus, most likely they are already working on it.
For non-programmers wondering about what the song means, it's very beautiful. Here's an English translation that took way to long to make:
Export it all as "it.nanowar.ofsteel.helloworld" (period)
This is an example of a HelloWorldMainLauncherClass (colon)
Follow these instructions when creating one (colon)
Do whatever my parent is doing
Set my property foo to the number foo (period)
My hidden property 'foo' is the Integer zero
These are the instructions for songRefrain (colon!)
The number 'i' is 0, so until 'i' is less than 'foo', add one to 'i' and
Show the text "Hello world!" (period)
The number pippo is 0
While 'pippo' is less than 'foo'
Show the text "Hello world!"
Change pippo by one
These are the instructions to 'main', take a list of strings to use them (colon)
Show the text "Hello World Programmer Start" (period)
The object tizio is HelloWorldMainLauncherClass where the first input is 2 (period)
Follow tizio's instructions for songRefrain (period)
Show the text "Program Finished!"
Follow tizio's instructions for falseMethod
tizio.falseMethod();
The number 'i' is 0, so until 'i' is less than 'foo', add one to ‘i’ and
Show the text "Hello world!" (period)
The number pippo is 0
While 'pippo' is less than 'foo'
Show the text "Hello world!"
Change pippo by one
If I may introduce a bug, the JVM will manage it for me
ensuring both security and portability
Then I'll write my code once, and run it everywhere!
With Static and Strong Typing, will let my programs be type safe!
GARBAGE COLLECTOR!!
The number 'i' is 0, so until 'i' is less than 'foo', add one to ‘i’ and
Show the text "Hello world!" (period)
(these are the instructions to 'falseMethod'!!)
The number pippo is 0
While 'pippo' is less than 'foo' (the true/false value 'metal' is false)
Show the text "Hello world!"
Change pippo by one
(if 'metal' is false)
The number 'i' is 0, so until 'i' is less than 'foo', add one to 'i' and
Show the text "Hello world!" (period)
The text 'joeyDeCaio' doesn't exist right now
The number pippo is 0
While 'pippo' is less than 'foo'
Show the text "Hello wo-
YAAAAAAAAAAA NULLPOINTEREXCEPTIOOOOOOOOOOOON!!!!!!!!!!!!!!!
TL Notes:
* NullPointerException is a problem cause by something not existing, specifically not having a value - in this context, it's 'joeyDeCaio' - you cannot get the length of text if the text is virtually thin air.
* From “If I may introduce a bug” to “GARBAGE COLLECTOR” is a comment, which means the JVM ignores it and doesn’t run it at code. Comments are meant to make code more readable for programmers to understand what the purpose of the code is, or in this case, to add a third verse/bridge.
Thanks to @Muscar2 for giving feedback!
1. 'Change x by one' should be 'add one to x'
2. Any none-programmer would not know that 'main' is the entry point of any program
3. Garbage collector is a heavy algorithm that secretly and occasionally interrupts your program to minimize memory leaks. It's designed to make it easier to write programs without thinking (or knowing) about memory management, but it's not perfect, especially in long-running programs or programs requiring high performance.
4. The null pointer exception was caused because we were trying to get the length of jeoyDeCaio, which didn't exist. It's not caused simply from something not existing.
5. It should probably also be noted that "if I may introduce a bug..." bridge is a comment due to /*, and thus will not be executed by the program.
Riescono a fare metal su qualunque cosa, incredibile. 👨🎤
As a fellow programmer myself I consider this an anthem of all my colleagues!
Would have been even better if it was released on 12th of September (256th day of the year)!
😂😂😂
Okay, that is _exceptionally_ nerdy, even for this comments section 😄
Im engineer, I've been waiting for this song all my life, thanks!!!!!!!