Archive | Learn Programming RSS feed for this section

Frustration

15 Nov

My provider, SiteGround, seems to have had a bit of a catastrophe over the weekend. My databases stayed in tact just fine, but it seems my account directory got scrapped. It seems they restored from a quite old backup because the wiki remained in tact except for some modifications I made within the last couple months, and the blog was totally disfunctional. Sadly, I’ve lost my banner image (what you see is the default with this theme).

In other frustrating news, the wiki has gotten the attention of a spammer (see example), so I’ve disabled anonymous editing. Hopefully that will dissuade this spammer, but I’m sure someone will come along with a script that automatically creates accounts, so the next step will be to add captcha for registration.

Testing, testing…

3 Nov

Here’s the first of the MediaWiki tutorials. You’ll find the remaining 12 parts by searching for “mediawiki” on revver.com.

revver(91522)

Also, it turns out you can download revver videos in .MOV format. The quality doesn’t seem to be better, but you can view the video fullscreen this way.

Revver is the one

2 Nov

Much thanks to Pascal VanHecke, who pointed me to his review of the web video services that judges them on their suitability for screencasting. As Pascal discovers, Revver.com and Blip.tv are the only video services with really adequate quality for screencasting. Revver in particular has nice video quality. My only complaint is that it offers no maximize or fullscreen viewing option, but this should be a non-issue shortly when the new flash plug-in with built-in fullscreen support is released.

So I’ve decided to use Revver to embed video directly on the wiki. While Revver does use advertising, it’s very unobtrusive (a single picture and link at the end of each video), and of course the videos will be downloadable still from archive.org. I’ve uploaded the MediaWiki videos already. Now I just need to get that MediaWiki plug-in that allows the embedding of flash objects.

UPDATE: I see what Pascal was complaining about with the user interface. It’s extremely clumsy if you get your metadata wrong and wish to correct it.

UPDATE: Perhaps I spoke too soon.

The forthcoming version of flash with the fullscreen support (which you can try out in beta) only gives users a fullscreen option when a new parameter for the object is used. This is a silly limitation.

If you download a video from Google video, you can play it back in their custom player application, and the quality is much better than how the video appears on their site. It’s quite adequate for screencasts, though it seems their resizing process doesn’t do as well as it should, so maybe I can get a better quality by doing it at my end and re-uploading. On the downside, while it seems users are free to copy around the .gvi files they download, the format is proprietary so users have to download and use the Google player to view them.

Hmm, I just noticed that it seems Google allows Mac users to download in .avi format, and a little link tricker will allows you to provide visitors a direct link to download the video in .AVI. Windows reports these .AVI’s as encoded in DIVX, but for some reason they won’t play for me in MediaPlayer (at least the version 10 I have); I guess I’ll have to instruct users to download VLC or maybe MPC.

Learn how to use MediaWiki

25 Oct

For an example of the inadequate video quality I was talking about in the previous post, check out my 13 part tutorial on how to edit MediaWiki wikis. I made this tutorial to help others contribute to the project.

In all, this tutorial runs an hour and a half. Considering the tutorial moves quite fast, I don’t think this speaks well of MediaWiki’s learnability, though to be fair, I get into a few of the more advanced features.

p.s. For comparison of the video quality, download one of the videos here. (That’s the only unit I’ve made available so far, but I really should take it down because it’s an old revision which contains some rather embarrassing flubs and has some clarity issues.)

More coding practices religion

21 Oct

Seven rants about successful programming give or take two.

What if this random guy on the Internet told you that you could be earning $60,000 – $100,000 dollars a year?

21 Oct

This obnoxious come-on actually gets it mostly right about programming myths:

Myth #1: Computer programming is for technology geeks.
The reality is that the Project Manager, Business Analyst, Tester, Manager, Sales Executive, Recruiter, Technical Writer, Web Developer, Web Designer and other roles in the programming industry require different personality types and there is no one personality that represents all these roles.

Myth #2: You have to be good at math to be a programmer.
The reality is that the majority of computer jobs do not require a math background. They however require logical, problem solving skills which can be learned by adults.

Myth #3: You have to study computer science in college to be a programmer.
The reality is that professionals with backgrounds in English, Arts, Music, Sales, Engineering, Mathematics, Psychology, Retailing, etc. are employed as computer programmers and there is no formal degree required for employment in computer programming.

Myth #4: There are too many programmers or the job market is saturated with programmers.
The reality is that if you have marketable computer programming skills with real world experience, recruiters will be calling you with job interviews and job offers.

Myth #5: Most of the computer programming jobs have been out-sourced. The reality is that there is such a high demand for computer programmers in the USA, that programming jobs go unfilled every day.

Myth #6: Computer programming takes years to learn.
The reality is that it only takes years to learn if you are not following a well thought out plan based on industry experience. If you get a copy of the “The Street Smart Guide to High Paying Computer Programming Careers“, you will learn how to become a professional computer programmer in months.

Myth #7: Computer programmers only work with computers, they don’t get to work with people.
The reality is that programmers need good people skills because they have to interact with both the users of their software and their team mates. So, people skills are highly valued in the programming industry.

The guy’s name is Kingsley Tagbo, which is apparently not made up.

Sneak some cryptography in early

20 Oct

I’ve decided that the opening course, data representation, should sneak in the basic concepts of hash functions and cryptography:

  1. Number representation
    A discussion of bits and how they can be used to represent numbers.
  2. Text representation
    How bits can be used to represent text.
  3. Introduction to hash functions and cryptography
    How to create digital “fingerprints” and how to keep digital information secret.
  4. Data compression and integrity checks
    Using fewer bits and making sure you have the right bits.
  5. Image and audio representation
    How bits can be used to represent images and audio.

This makes sense because data compression relates to encryption, and hashing relates to integrity checks. In turn, lossless compression shows up in image and audio formats.

What I have in mind for this cryptography intro is something a lot like what Steve Gibson covered in several episodes of his podcast, Security Now. (The relevant episodes are numbers 30, 31, 33, 34, 35, and 37.) As for books, I haven’t looked too deeply into the offerings for intro crypto yet.

Only problem now is that I’m only really versed enough in these subjects to see that a broad overview of the theory should go here in the project, so I guess making this unit will have to be put off for quite a while until I can do some serious reading.