Happy birthday, hardware!

I was glancing at my profile recently and realized, it’s been a full six years since I built my desktop computer! I think that calls for a celebration. That’s a pretty long time in computer years.

I love my computer. I open it up about twice a year, to clean it and to adjust the fan speed for the changing seasons, and every time I do I remember why I love it so much. The internal layout is just plain lovely. Aside from needing to replace the monitor, I’ve had no failed hardware. It runs as fast and as smoothly as the day I put it together.

…which makes me so mad! How am I going to have fun buying new parts and upgrading if everything works well and suits my needs? What the crap??

But don’t worry, I still love you. Here’s to another year together, programming and blogging and music and pictures and seeing how many operating systems I can cram onto you. Which reminds me, despite having Arch Linux, Haiku, OpenBSD, and Linux Mint installed, I still have an empty partition… I think I just thought of what to give my computer for a birthday present. You can never have too many operating systems!

WebRTC

I have been waiting oh-so-long for a piece of software to save me from Skype, and today I may have found my savior!

I’ve been reading about WebRTC for years. It’s been a while now since Chrome, Firefox, and Opera announced support for WebRTC. Since then, the implementations have matured and websites have started to pop up with support for it.

The result is that, today, I used talky.io to:

  • Video chat with my family across the country
  • With no registration and instant setup
  • With clear (but occasionally just a tad laggy) video and audio
  • Using nothing but free and open source software
  • Via web browsers that are most likely already installed on many people’s computers

I’d call that a victory for freedom!

Which camera should I get?

My sister-in-law sent me a message recently asking me what I would recommend as a good camera. I love this kind of question. I would say “photography” is one of my big hobbies, but it really isn’t. Instead, my hobby is more, like, “talking about photography”.

Her needs were:

  • Control and quality (in other words, a DSLR as opposed to a point-and-shoot)
  • Shooting people, landscapes, and in low light
  • Under $600

Here was my response:

The main two camera makers are Canon and Nikon. They make a ton of cameras, and the names of them are all really confusing! Fortunately the Wikipedia makes it really easy to see all the different types and what year they came out. Just scroll to the very bottom of the page to look at the tables of camera models:

Nikon:

https://en.wikipedia.org/wiki/Comparison_of_Nikon_DSLR_cameras

Canon:

https://en.wikipedia.org/wiki/Comparison_of_Canon_EOS_digital_cameras

Sony also makes cameras. They’re a little different but still very good:

https://en.wikipedia.org/wiki/Sony_Alpha_58

I recommended the Nikon D3200, which can be bought from Amazon with the only two lenses you’ll ever need (but you can always buy more!) and a bag to carry them in for $547. You can also buy it with only one lens for less money if you like.

Now, as you’ll notice from looking at the table with all the different Nikon cameras on it, the D3200 isn’t the newest model. The D3300 already came out! So why would I recommend the D3200 instead of the D3300? Because they’re almost the exact same camera. But since the D3200 is a little older it’s also a little cheaper.

Another way to think about it is, when the D3200 came out it was a really good camera. Even though the D3300 already came out, the D3200 is still a really good camera. My point is, don’t be fooled by newer models and higher specs!

How do you choose whether to get a Canon or a Nikon camera? They are both really really good. They are the same prices and the same quality and have about the same features. Here are the differences that I know of:

  • The button layout and the menus are a little different. They both have the same basic features, but the locations of the buttons you press to be able to use those features are a little different.
  • They take different lenses. If you have a collection of Nikon lenses then you should buy a Nikon camera. If you have a collection of Canon lenses then you should buy a Canon camera. But you don’t have any lenses, so it doesn’t really matter. If you have a friend that has a bunch of lenses that you can borrow then you could buy a camera that works with them, but you probably don’t know anyone that you want to borrow lenses from anyway.
  • Canon and Nikon cameras do things a little differently, like auto white balance and auto focus. But the only people who care about these things (or can even notice them) are professionals with years of experience. I certainly don’t notice.

One more thing: The most important thing in photography is light, and by extension, the lens. What lens you use is much more important than what camera you use. The reason some cameras cost more than others is for reasons that only professional photographers care about, things like being water proof, or being able to use two SD cards at once, or having more buttons so you can switch modes more quickly. In summary, the lens is more important than the camera, and you’ll get all the features you need with pretty much any DSLR camera.

Your brother and my brother both use Canon cameras. Your aunt and I both use Nikon cameras. My coworker uses a Sony camera. They’re all good.

OpenBSD

I had a new experience last week: I installed OpenBSD. And wow, what an experience it was!

As a fan of trying new operating systems, I’ve been wanting to “learn BSD” for many years now. I had decided a while back to try out FreeBSD because it has the largest user base, and assumed it would be the “best BSD experience” for me. Well, my experience with FreeBSD was that documentation was sorely lacking (despite hearing the contrary) and the things I was most interested in seemed to be in a state of flux, namely package management and compilers. That and the fact that there doesn’t seem to be “one right way” to do almost anything in FreeBSD caused me to never really understand what I was doing, no matter how hard I tried. Or maybe I’m just an idiot. I don’t know.

Well, OpenBSD 5.4 just came out, and after reading a comment on OSNews from a fan absolutely gushing over it, I became really excited to try it out.

Now, I only knew a few things about OpenBSD:

  • It’s secure. Like, VERY secure.
  • The documentation is vast and superb.
  • It’s not very popular, even in the list of not-very-popular operating systems.
  • The mascot is cute.

I downloaded the latest release and read a bit of the installation guide. I was very impressed with the documentation, but not nearly as impressed as I was going to be after installing everything. One thing in particular stood out to me in the installation guide: the advice to install OpenBSD on an empty hard drive if it’s your first time. Pshhh, I’ve installed a million operating systems. How hard could it be?

Well, it wasn’t hard, but it was very different from what I was used to. At one point near the end of the installation after configuring the partitions, I had no idea whether or not all my personal files were still on my hard drive. After wiping my sweaty palms together and rebooting my computer, it turns out I’d done everything correctly and didn’t erase anything. Well, I guess I should say OpenBSD did everything correctly. For all the power it provides, the installer really is pretty automatic and smart. Anyway, as a responsible computer user I of course have a recent backup too, but it’s still nice to not have to need it.

Success!

Success!

And it’s at this point that the documentation really impressed me. I finish the installation and reboot. I login and it tells me I have a new email that I can read with the “mail” command. The email gives a welcome and a ton of information, including the suggestion to read “man afterboot”. That man page gives even more instructions on how to do things people often want to do after an installation. Every command has a manual. Ever configuration file has a manual. The documentation just kept going and going! And it’s all both high quality and current.

I installed a few applications with ease using the built in package manager. Although the X server is not “part of” the operating system, it was included in the install and was automatically configured.

I started X and had to laugh. OpenBSD is very much UNIX, and if ever I saw a GUI that screamed “UNIX” it’s the default in OpenBSD.

I can almost TASTE the 1970s.

I can almost TASTE the 1970s.

I decided to keep it, just because it makes me feel all hardcore UNIXy.

Also, OpenBSD feels fast. I don’t know if it’s just in my head or what, but the Internet connection in particular just feels so smooth compared to Arch Linux.

And that was pretty much it. The Internet, video (including 3D Radeon drivers), and audio were all configured automatically. I’m incredibly impressed with what I’ve seen. I haven’t decided where to go with OpenBSD from here, besides just “learn it more”, which I look forward to doing.

…posted from OpenBSD!

Jolla Mobile

I freaking love my mobile phone.

It was one year ago on 28 Aug 2012 that I bought my first smart phone, a used Nokia N900. I’ve read about different phones and I knew exactly what I wanted. The N900 came out in late 2009. It’s pretty old, but there’s no other phone like it.

It’s pretty much a mobile Linux computer with a pretty and simple phone interface slapped on top of it. Since Linux is all I use at home it’s a perfect match for me. It’s all the power and all the tools that I use on my desktop computer in a form that can fit in my pocket.

"Hello? Oh, hey! Yeah, I got my new Linux phone! It's JUST LIKE a computer?"

“Hello? Oh, hey! Yeah, I got my new Linux phone! It’s JUST LIKE a computer?”

It took me a while to really realize what made the N900 special. After all, Android is “Linux” too. The N900 is different in that it’s Linux like every other Linux operating system. It has GNU. It (mostly) follows things like the Linux Standard Base and Filesystem Hierarchy Standard. The package manager is “apt” from Debian. It’s Linux, just like I like it.

It’s also very different from the iPhone in that all N900 phones are unlocked, and anyone can become root and get full access to the device from the day they get it. That means I’m in control of my phone and everything on it. I can install anything I want, even older versions of software. I can develop software for it from any computer, including making software FOR the phone ON the phone. I wouldn’t want to, but the point is that I can.

The N900 had one successor, the Nokia N9, before Nokia moved all of their smart phones to the Windows Phone operating system. The people that worked on my phone left Nokia and started their own company called Jolla. And if you’re a rabid Linux nerd like me then you’ll be excited about the mobile phone they’re developing.

What makes the Jolla Mobile phone special? It’s open source Linux underneath with a shiny new easy-to-use user interface. It’s made by the same people that made the N900 and the N9. It runs Android applications (if you can’t live without some). And it comes out by the end of 2013. Yay!

…but sadly I probably won’t be able to get one when they do come out. (Boo!) It appears that all the pre-orders have been booked, and there might be some time before they are sold in the US.

It’s for the best I suppose. I need to save up money for it (unless Santa really loves me).

Until then, I’ve got pictures of the Jolla Mobile phone as my wallpaper on my N900. I installed all the ringtones and SMS tones from Jolla (they’re pretty cool). So until I get one, I can dream…

my-jolla

Updating my operating system trifecta

This weekend, I updated the four operating systems I have installed on my computer. Well, Arch Linux doesn’t really count, because, you know, it just keeps rolling along.

Haiku

I started with the nightly Haiku gcc2hybrid4 build, because it’s the easiest. I enjoy updating to the latest nightly. I installed it and looked for any signs of the usual regressions: video driver problems, sound card problems, network problems… When there is a regression, I find the commit that caused it and report it on the Haiku bug tracker, where the kind Haiku developers promptly fix it. It’s fun! But, alas, everything worked great.

I have a separate partition with the Be File System on it to store all my personal files. It makes installing the nightlies super simple.

Linux Mint

I installed the latest version of Linux Mint, Linux Mint 15 Cinnamon x86_64. I almost never use it, but when I do it’s for two primary reasons. One, my Arch Linux installation is messed up and I’m in a hurry to get something done (usually related to my stupid webcam). And two, I like to experience Linux distributions that are setup to be visually attractive (unlike Arch Linux), to get ideas of what I can do to beautify my Arch Linux setup.

FreeBSD

I reinstalled FreeBSD 9.1 x86_64. It’s funny, no matter how many times I try, I just don’t seem to get FreeBSD. Well, I decided to give it yet another shot. Video, audio, and networking are all working great. I’ll try compiling and installing some more packages tonight.

I have one partition split into to UFS slices, one for the operating system and one for my home directory.

And thus ends my experience updating the all of my operating systems!

1500 post update

I recently made post number 1500 on the Arch Linux forums. I thought it’d be nice to take a moment and reflect on Arch Linux and its community.

So, let me tell you about MMORPGs. They scare me. I’ve never played them, but I’ve watched, and lost, friends that do. MMORPGs look boring to me. They look like mindless grinding for the simple purpose of making a number increase that resides on a computer somewhere that could get erased at any moment. How ridiculous.

And then one day I suddenly realized: I do play an MMORPG. It’s called the Arch Linux forums. I log in every day for at least an hour. I play with other people from around the world. I monitor my stats as they increase. I don’t think I’ve fought any battles, unless you count Vim vs EMACS. Anyway, it was a harsh realization.

I’m more active on the Arch Linux forums than anywhere else on the Internet by far. It’s my hobby. It’s enjoyable. It doesn’t feel like a chore. Sometimes I ponder what it would be like to become a moderator, but I quickly remember how much I enjoy not having any responsibilities there. Plus, I’d probably abuse my powers. “You have violated forum etiquette by recommending EMACS. Closed. Binned. For deletion.”

The Arch Linux forums and wiki are kind of a big deal on the Internet. As some of the best technical resources for Linux, users from all types of distributions find their way to them for help. And it’s so easy to contribute to. Anyone can create an account and start answering quesions and posting information.

I think it’s neat the way Arch Linux doen’t do any “advertising”. The developers have no desire to promote Arch Linux. Instead, they make the best operating system they can, and people interested in its features end up finding it (like I did). Arch Linux is one of the most popular Linux distributions, all based on its technical merit and community.

It’s been over three and a half years since I started using Arch Linux. I have no reason or desire to switch to anything else. Except maybe to get rid of systemd.

Less control is… better?

I had a strange conversation with my classmate today in my Red Had System Administration class. It kind of left me speechless. The conversation wasn’t very well guided, but the main topics were software freedom and user control.

I brought up the topic of smart phones, and why having something like Linux on a phone would be so desirable. With my Nokia N900 and Maemo, I pretty much have just that. I also have control. Every Nokia N900 comes unlocked (I can use it with any SIM card), with root privileges (I have admin control anywhere in the filesystem), able to be rooted (any OS can be installed or reinstalled), and any application can be installed on it using the default package manager, apt (the same that is used by Debian GNU / Linux).

I brought up this topic so my classmate could help me think of reasons why Linux on a phone would be great. Instead, I discovered that his opinion is the exact opposite of mine: It’s much much better for the owner of the phone to have less control. This will prevent the user from breaking it.

He went on and on with this point. I wish I could describe it better, but the problem is I have a really hard time understanding it.

Here is my point: There’s no difference in stability between an iPhone that is locked down (like it currently is) and an iPhone that gives me complete control (to install applications from any source, access to the filesystem…). If I choose to do something with my phone that is not supported by Apple, then yes, I may break it, but at least it’s my choice. Instead, Apple worked very hard to add extra software and extra hardware that will prevent me from doing anything of the sort. They did extra work to give me less control of the electronic device that I own.

My classmate’s opinion surprised me. I mean, it really surprised me. I’m used to talking to people who care about software freedom, at least a little bit. I’m also used to talking to people who don’t know or don’t care about software freedom. But I can’t think of a time I’ve ever met someone who was so much against the idea of software freedom.

I was also extremely surprised to find out how little he and my other classmates understood about free software, as described by the Free Software Foundation. I mean, we’re in a Red Hat class, so I just kind of assumed everyone knew. I think I assumed incorrectly.

I’m thankful for Arch Linux

I had four days off from work this week thanks to Thanksgiving, and I decided to spend a lot of that time trying out some operating systems. Here are my extremely simple, quick, superficial experiences.

Slackware

I used to be a Slackware user, as can be seen in my Linux history. I appreciate that the outstanding installation program hasn’t changed since the last time I used it in 2003. I was excited to use a very stable and nicely setup system with KDE.

Well, I was reminded why I don’t like KDE. First of all, I find the default appearance to be incredible ugly. Second, there are so many little applications working together that make up KDE, and one of them always seems to be either crashing or causing a graphical glitch. So, I erased Slackware.

Fedora

I was interested in trying GNOME 3. After looking around a bit, I realized Fedora was the only major distribution that comes with the standard GNOME 3 Shell by default.

I realized I don’t like GNOME 3. Everything just took so much mouse movement and so much clicking. Maybe I was using it incorrectly. Anyway, I erased Fedora.

Frugalware

I wanted to try Frugalware because it’s one of the only distributions that comes with the Etoile Desktop Environment, based on GNUStep. Frugalware didn’t like it when I told it not to install the boot loader into the MBR. I couldn’t get it to boot after that, so I gave up trying to get it to load.

MenuetOS

I love MenuetOS. I love the story of MenuetOS. A programmer is fed up with people always saying “Sure, assembly language is incredibly fast, but it’s impossible to write any big or serious application with it”, and so he decides to write an entire operating system in assembly language. That includes both the kernel and the GUI (with transparency effects!). It has a text editor, web browser, image editor, music / video / DVD player, Doom, and Quake.

I was able to run it from a live CD. Unfortunately my USB mouse was not detected, but I was able to move the mouse cursor around with some keyboard shortcuts (Ctrl – Meta – arrows / space). If it had worked, I would have installed it onto a partition, just for the geek cred.

openSUSE

My wife liked openSUSE from her experience from a few years ago, so I decided to give it a try. What a beautiful and polished experience openSUSE is! The installer is amazing and the default setup is gorgeous (even with KDE!). So I decided to keep it as another platform to compile and test the video game I’m making on.

…until I discovered two simple packages I need (Allegro and GNUStep) are not in the openSUSE repositories. I’m going kind of crazy. These are pretty basic packages. Does openSUSE really not provide them? I searched and searched on the Internet, but I don’t think I care enough to look into it much further. So, I’ll probably erase openSUSE.

And this is the point when I started to realize something about package managers: they don’t provide any useful information. The first thing I do when installing a new OS is apply updates. These new GUI package managers don’t tell me what is being downloaded or how much is left. It’s like a window that says “Click here to update”, then “Updating…”, then “Done.”. I’m sure it’s possible to see the details somehow, but it sure wasn’t obvious to me.

FreeBSD

I plan on keeping FreeBSD for two reasons: to tinker with and learn on, and to test the video game I’m making on another operating system. It’ll become one of my primary three operating systems.

So, in the end, I end up triple booting Arch Linux, Haiku, and FreeeBSD. I’d still like to have some sort of popular fancy Linux distribution installed, so I might try out Linux Mint with Cinnamon if I have some more time.

I had fun trying out some new operating systems. It’s been three years since I started using Arch Linux and lost any desire to do any more distro hopping. But trying them out again has made me realize how thankful I am for Arch Linux.

A quick rant(s)

I have a software pet peeve. Have you ever seen something like this:

1 update(s)

or, even worse, this?

1 updates

Well, I think this is ridiculous. Do you know why I think this is ridiculous? Because it’s 2012, and programmers have really good “if” statements available to them! :P