Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#9223 closed enhancement (fixed)

[VIDEO] Hello World in C++ with Haiku

Reported by: Barrett Owned by: haiku-web
Priority: normal Milestone:
Component: Website Version:
Keywords: Cc:
Blocked By: Blocking:
Platform: All


In a GCI task i've mentored a student to make a video showing how to make an hello world app with Haiku. I'm creating this ticket so that the video will not be forgotten.

I'm not sure where it could be added, but it would be good to have an Haiku youtube channel.

Attachments (3)

scripts.txt (3.8 KB ) - added by TriEdgeAI 8 years ago.
script.diff (3.1 KB ) - added by humdinger 8 years ago.
Some small chages
HelloHaiku.cpp (775 bytes ) - added by TriEdgeAI 8 years ago.

Download all attachments as: .zip

Change History (14)

comment:1 by jstressman, 8 years ago

At around the 3:45 to 4:00 minute mark, when he's describing the coordinates for BRect, he says "top left corner" and "bottom left corner". The latter should be "bottom right corner", correct?

I realize it might not be an easy thing to fix now after the fact. Just thought I'd point it out just in case.

comment:2 by TriEdgeAI, 8 years ago

Yes, in fact there are some other errors that I found myself, too. I'll remake it. The things I've planned for now are:

  • Use BeScreenCapture and no VM, which means really good performance.
  • Use Text-To-Speech software, which means a way better voice and no background noise.
  • Follow Haiku Coding Style Guidelines this time.
  • Use better video editing software (might be Sony Vegas).

For the TTS, I've set my eyes on this one: Switch to American English, Salli.

I'll attach the scripts now, so anyone can make a correction/suggestion before they are actually put into the video.

by TriEdgeAI, 8 years ago

Attachment: scripts.txt added

comment:3 by humdinger, 8 years ago

Nice to see you perfecting your video! I have a few comments. Have a look at the script.diff I uploaded. Mostly minor changes to the wording here and there.

One thing I noticed in your original video: You could use some time saving shortcuts, like the "Open Terminal" Tracker add-on I mention in that diff. If you close and open Terminals more often, mentioning the ALT-OPT+T shortcut would be OK.
Another such time saver is bash's history with up/down-cursor and tab completion.
Of course, whenever you use a shortcut, you'll have to quickly mention that.

You may want to switch workspaces (best have the Workspaces applet either as replicant on the Desktop or have the Workspaces app open. Do that before recording.), and open the BeBook link from the Desktop. Navigate to the class you're talking about and quickly show the constructor. It's good to memorize how you get to the page instead of fumbling around while recording. :)

Does BeScreenCapture work good enough for recording natively? Otherwise, capturing with kazam under Linux seems to work fine. Using a KDEBUG_LEVEL_0 image and a fast computer helps...

by humdinger, 8 years ago

Attachment: script.diff added

Some small chages

by TriEdgeAI, 8 years ago

Attachment: HelloHaiku.cpp added

comment:4 by TriEdgeAI, 8 years ago

I've attached the code I plan to be written out in the video. The classes are not split in different files (HelloHaiku.cpp, HelloHaiku.h, HelloWindow.cpp, HelloWindow.h) for the sake of simplicity, since this is an introduction video lesson. All criticism and corrections for this (and the scripts) is highly-appreciated. If it's all cool, I will deliver a new video in the next few days. YouTube is a great way to popularize Haiku and attract people to it, so a YouTube channel is a must. I can make one and directly place the video there after it's made and approved, but I cannot promise that I will be able to maintain it afterwards.

comment:6 by TriEdgeAI, 8 years ago

This time used master-race Vegas, not WMM. Audacity. Two times shorter video. Cheated the slowness of the VM by simply cutting out parts of the video.

comment:7 by jstressman, 8 years ago

Just watched it, looks great! Didn't notice any problems at a glance. :)

Thanks for the update!

in reply to:  7 comment:8 by humdinger, 8 years ago

Resolution: fixed
Status: newclosed

Very nice TriEdgeAI. I've added the video to the others at Haiku-Files. I expect we'll add links to those in the documentation section of the website some time.

I added a "The 'BeBook' is linked from the Desktop" text where you point out that the API docu "is linked below". :) A tiny imprecision was the format of the app signature, which should be "application/x-vnd.HelloWorld", but that's no showstopper...


comment:9 by axeld, 8 years ago

Using the layout API instead would have been nice, though :-)

comment:10 by humdinger, 8 years ago

That was left out deliberately for the next part of the new TriEdge "Hello World" video franchise: "Oi World! - It's back...". :)

comment:11 by TriEdgeAI, 8 years ago


Just to make it clear, with "is linked below" I was referring to the description section below the video. All the links (including the ones at the end of the video) should be present there for convenience.


I tried to minimize the usage of API calls in order to keep it as simple and easy to grasp for newcomers as possible. I didn't even center-align the text for that sake :) I think these things are more suitable for part 2 or even 3 ;) I'm not sure about what type of audience the videos target, but if it's the general audience - simplicity should be a high priority, imho.

Note: See TracTickets for help on using tickets.