Kenan Kalajdzic

Crashing Scratch and Snap! for fun and education

Crashing programs has always been fun, but it can also be a great means for learning a few things about memory organization and allocation. I find it especially useful when speaking with young programmers about physical limitations of a computer.

Let me clarify: I am not interested in demonstrating an illegal memory access which results in a SIGSEGV or a buffer overflow. Rather, I wish to show to a young programmer what uncontrolled dynamic memory allocation (e.g. a memory leak) can do to a program, even if that program is written in an innocent-looking language like Scratch or Snap!.

Read More »

• • •

Suspending a root shell started with su

If you are an old-school UNIX user, chances are that you prefer the traditional way of switching to root with su rather than using its more convenient counterpart sudo. If you need to switch between regular user and root frequently within a single session, you might find it inconvenient to have to type in the root password each time you execute su.

A convenient solution for this problem would be to use the shell's job control functionality and type CTRL-Z to suspend the root shell, then re-activate it with fg when it's needed again. Unfortunately, this doesn't work for the reasons discussed below.

Read More »

• • •

And they say they haven't received your e-mail

Has it ever happened to you that someone claimed they hadn't received your e-mail, while you were completely sure you sent it? Have you ever used e-mail to apply for an important position, only to find out that your application has not even been considered because you have supposedly never sent it? Were you able to prove that your message has been delivered to its destination?

If you run into this type of trouble (especially at work), you may find this article useful. I have done my best to avoid going into any sort of detailed technical discussion and have concentrated on providing information which should be useful to an average e-mail user.

Read More »

• • •