Archive for category Tech

Net Radio Exec Says “Don’t Mention Linux”

A succinct reply to an article on Slashdot. The gist is that while marketing a new piece of hardware, a marketing professional was asked about the software that powers the device (being Linux). To which he replied: “I don’t like the using the word ‘Linux’ on a radio.”

Is just the mention of the word ‘linux’ that scary? Apparently so.


Seriously, this is not how it works. For a quick anecdote, when people ask me how I have all these rotating workspaces and crazy ass widgets and stuff, I reply ‘Linux’. Most people look blank at this point. Then I say ‘It’s an operating system, like Windows but not’. Usually, still blank looks. Remember, these are people who’ve never installed an OS in their lives, who’s points of comparison between XP and Vista were ‘It’s gone shiny and see-through, look!’, and who don’t know what you mean when you say that their computer is slow because they wanted their printer to work and installed the drivers for it.’Normal’ folks don’t know what Windows is, what Microsoft do, or the difference between a PS/2 port and a TCP port. These things are all irrelevant to them, or at least they think they are. It’s frickin’ marketing, you said it in your own post – people recognise that little wavy window thing, and don’t know that there is an alternative. Unfortunately, people don’t yet recognise Tux, or the Ubuntu blobby thing, or any of the myriad mascots and logos of the FOSS community.When marketing a product, you can say ‘Powered by Windows’ or ‘Intel inside’ and people just recognise the terms, making them feel a bit techy, but have no idea what it actually means. If you say ‘Powered by Linux’ then the majority of people may as well have heard ‘Powered by Snarblax’ – They still have no idea what it means, but this time they know they don’t know what it means, and that makes them feel stupid, and that makes them dislike whatever they associate with that stupid feeling. In conclusion, you, Anonymous Coward, are a moron.

via Slashdot Linux Story | Net Radio Exec Says “Don’t Mention Linux”.

Tags:

HOWTO Change Gnome Panel Color

I’ve gotten sick of looking this up everytime I change my desktop theme or colors.  Gnome really needs to make this an easy option somewhere in the preferences:

HOWTO Change Gnome Panel Text & Handle Color

Create an empty file called .gtkrc-2.0 in /home

If you already have a .gtkrc-2.0 then just add the code to your existing file.

Paste the following code inside:

1
2
3
4
5
6
7
8
9
10
11
12
13
style "panel"
{
   bg[NORMAL]     = "#000000"
   fg[NORMAL]      = "#FFFFFF"
}
widget "PanelWidget" style "panel"
widget "PanelApplet" style "panel"
class "Panel" style "panel"
widget_class "Mail" style "panel"
class "notif" style "panel"
class "Notif" style "panel"
class "Tray" style "panel"
class "tray" style "panel"

bg[NORMAL] is what defines your Gnome panel handles color, simply add the hex code for the color that you require.
- you will probably want it to match the colour of your Gnome panels.

fg[NORMAL] is what defines your Gnome panel text colour, again simply add the hex code for the colour that you require.

Now save the file, logout and back in and you should see the changes take effect.

via HOWTO Change Gnome Panel Text & Handle Colour – Ubuntu Forums.

Instead of logging out and back in you can just kill gnome-panel. It’ll restart automatically:

killall gnome-panel

Now my screen looks like this:

Screenshot

Tags: , ,

Sure, I can fix it.

www.toothpastefordinner.com
www.toothpastefordinner.com

Tags: ,

Crontabbing VLC

My nightly routine for years has involved falling asleep to music. The few times in my life (hospital, sleep clinic, basketball camp) that I didn’t have music to fall asleep to can be counted as some of the most miserable of my life.

What started as a radio, became a boom-box playing cassettes. Then cassettes gave way to CDs. Recently (as in the past 5 years) I’ve come to love internet radio. For a long time I had an old windows laptop that wouldn’t hold a charge and had to be plugged in serving as the nighttime jukebox.
A Little Night Music
Unfortunately, I had an idea one day (my wife hates when she hears that) and that idea ultimately destroyed the old laptop. Meh. No problem. I substituted my netbook. Better CPU, more memory and it ran linux!! I was able to script a cron job to turn the machine off (sort of a sleep timer) automatically at different times during the week and on weekends. It worked great!

Eventually, I started just leaving my netbook at home. That made me sad. The little netbook was good at a lot of things. Being stuck as a dumb jukebox seemed like such a waste.

Until now.

I recently came into possession of an old desktop machine that I stripped for parts. One of those parts was a D-Link wireless PCI card.

Last night I installed the wireless card in Pugsley (another low-power, headless linux server that lives in my living room). After screwing around for a while figuring out how to get a wireless connection from the command line, I moved Pugsley to the bedroom and set him up next to my nightstand.

I installed VLC, because I know it can handle streaming audio and will run from the command line. I stopped by .977 and grabbed some streaming addresses for a couple music channels (80′s and Smooth Jazz!) and set up vlc to play the streams from a script. Cool.

Now to schedule the music. I knew I wanted to have Pugsley start the music at 9:00pm every night (jazz during the week, 80′s on weekends) and shut the music down in the mornings (4:00am during the week, 11:00am on weekends)

First I created a cron job from the root shell to stop the music. That was an easy ‘killall’ command:

# Nighttime music
00 04 * * 1-5 killall vlc
00 11 * * 0,6 killall vlc

Then I wrote the cron job to start the music (depending on the day) from my user shell (VLC doesn’t like being started by root):

# Turn on Night Music (every night @ 9:00pm)
# Friday & Saturday
00 21 * * 5-6 /home/chuck/scripts/80s.sh
# Sunday Thru Thursday
00 21 * * 0-4 /home/chuck/scripts/jazz.sh

Now I just needed to write the scripts to play the music. While the script is an easy one liner, the real trick was specifying a dummy interface to VLC. Without an interface (such as the terminal) VLC will die with an error. So calling it from within a cron job won’t work.

Googling around I found this forum entry

So I wrote my scripts:
80s.sh:

1
2
#!/bin/sh
vlc --volume 30 -I dummy http://www.977music.com/tunein/web/80s.asx

and jazz.sh:

1
2
#!/bin/sh
vlc --volume 30 -I dummy http://www.977music.com/tunein/web/smoothjazz.asx

So now, every weeknight, the computer starts up some smooth jazz and and shuts it down before my alarm goes off for work. Every weekend, it serenades us with 80′s music and shuts it down the next morning before noon! Plus, I got my netbook back! Awesome.

Now, to get some sleep.

Tags: , , , ,

Computer Stupid

I was reading a post in my news-reader that struck home:

So I was given another friends’ computer to fix. They were having overheating issues, which was easily deduced to a blocked fan. Nonetheless, when I turned it on I was greeted with the same issues that so many have not taken care of.

It was still on XP Service Pack 1.

What this meant was I was stuck doing the upgrades. I really don’t mind, but it made me think a bit about how people look at and use their computers. How they say their “Computer Stupid” and don’t know all the technical jargon I spew.

I hate that term – “Computer Stupid”.

from Geek News Central

computerguyI also hate that term. Another phrase that pisses me off is

…the computer must know it’s you

I hear that one when the reported problem doesn’t appear when I show up to look at it. As if the computer was aware of my presence and decided to behave.

Listen people. It’s not that hard.

Once upon a time it took a degree just to look at a computer let alone get it to do your bidding. But much like the evolution of the automobile, it’s quickly becoming evident that you don’t have to know how to build one just to drive one… er, use one.

Much like putting gas in your car and changing the oil, your computer needs maintenance. Also, like your car, the computer is usually pretty good at telling you what is needed and when.

Do this the next time you see a message on your screen: read it. You’d be surprised at how often you can solve a simple problem by reading what the computer is telling you. I blame the internet – specifically Internet Explorer – for the proliferation of pop-up messages. Spend any time at all online and you’ll easily train yourself to click anything just to make the message go away. I understand. But pay attention to what your computer is telling you.

Apply your updates and do your backups… Read that error message.

What if you still don’t understand it?

Now you can call me.

MP-BIOS Bug?

MP-BIOS Bug boot screen

MP-BIOS Bug boot screen

So, as a household, we’ve switched to Linux. Ubuntu, specifically. Well, my daughter is lone hold-out with a windows machine, but I told her the next time she has problems with viruses and spyware – windows goes.

So here we are happily humming along with linux powering our day-to-day needs when all the sudden yesterday *BAM* the MP-BIOS Bug rears it’s ugly head.

What the hell is an MP-BIOS Bug? I don’t know either, but I spent a lot of time yesterday reading about ways to get around it.

The most common solution (and the one that worked for me) was this: (pulled from a post on Ubuntu’s forums)

I have no idea why it’s happening, but I had the exact same error, and here’s how I fixed it:

At the grub boot screen, use your arrow keys to highlight “kernel /boot/linuz-2.6.15-25-386 root=/dev/sda3 ro quiet splash” (your exact paths and numbers might be a little dfferent). Then type ‘e’ to edit the boot options; you will be taken to another screen. Append ‘noapic’ to the end of the boot options, and hit enter. Then just type ‘b’ to boot. [Your machine] should then boot normally.

So now the machine is back up, but I had to turn off APIC. I’m not sure I’m totally comfortable with my machine not using it’s APIC! What the hell is an APIC?

Y’know, this is the kind of problem I came to expect from windows.

But, then again – at least I didn’t have to reinstall the operating system.

So does anybody have a clue what’s going on here? I assume this error cropped up after an update. I’m hoping it’ll go away after another update. But from what I’ve read this bug has been around for a long time.

Is my calendar broken?

“One reason programmers dislike meetings so much is that they’re on a different type of schedule from other people. Meetings cost them more.”

I’ve been spending some time recently trying to convince people to leave me alone.

I’m not a recluse, I’m a programmer.

I get depressed watching entire days slide by knowing that I’ve accomplished nothing. Well… nothing on my schedule. I accomplish plenty of things on other people’s calendars, but I just can’t seem to find the time to dedicate to the projects that I take the time to plan.

It turns out that my calendar is broken.

I’ve complained numerous times that I need blocks of uninterrupted time to accomplish things. I’ve pointed out how a phone call or a random drive-by (personal requests for my time) can totally kill my productivity.

It turns out that I’m right.

“…programmers and writers… generally prefer to use time in units of half a day at least. You can’t write or program well in units of an hour. That’s barely enough time to get started.

When you’re operating on the [programmer's] schedule, meetings are a disaster. A single meeting can blow a whole afternoon, by breaking it into two pieces each too small to do anything hard in.”

One option is to insist on chunks of time during the week in which I must be left alone. All calls go to voice mail and visitors are stopped at the door. Productivity would soar!

Another option is to just do mediocre work. Accept the dozens of interruptions each day and do just enough to get to the end of the day.

I can’t do that though. I love my job..

I just wish I’d be left alone long enough to do it.


Quotes from: Maker’s Schedule, Manager’s Schedule, By Paul Graham

Tags: , ,

Leading a Double Life

While it’s never been a secret that I run the website Creepy Cleveland, I have tried to keep this blog and that one separate. (And doing a damn good job based on traffic to this blog.)

Well, I’ve decided that I want to have a place to bitch about the trials and tribulations of running Creepy Cleveland.

I *do* have a category on Creepy Cleveland named ‘Announcements’ that I use for news and non-haunted-type posts, but I suspect that CC visitors probably don’t appreciate me rambling about converting the blog from .asp to .php or transferring from one host to another.

So I’ve decide to bore my readers here with that kind of blather. (Shouldn’t be too hard, considering the three people that read this with any regularity just skip the posts marked ‘tech’ anyway – Hi Carrie, Dad and Joe!)

So anyway… let’s get on with the show shall we?

Here’s what’s bugging me about Creepy Cleveland now:

  1. Once upon a time I set up TwitterFeed to feed my CC posts to Twitter. It still works, but I have no idea what login/password I used to setup the account. And TwitterFeed is no help.
  2. I keep all my CC email in a separate gmail account with one of those random generated passwords (for ultimate security!). It’s so secure that even I can’t remember it, causing me to have look up the password any time I want to check my email.
  3. I just recently moved CC to a new blog engine with way more flexibilty and features! I’m fixing broken links and pulling old content from my hard drive to republish. (OK – not a problem – I’m just really busy)
  4. I keep all my CC linkroll bookmarks in delicious and I hate what delicious has become. Plus it’s *another password* to remember when posting content.
  5. I’ve recently created an Adsense account to see if I can maybe make at least enough money to pay for the hosting plan. I also take great pains to hide/kill ads in all my browsers. Conflict of interest? Yep.

I guess that’s it for now. None of the above is really a big problem. I really love running Creepy Cleveland and enjoy the challenges of trying to make a popular, readable site. I’ve gotten some positive recognition for it and hardly any criticism (and I get invited places!)

In my mind – it’s totally worth it.

I’m just glad I have a place to complain about it now.

Tags: ,

WordPress fanboy?

I guess I’m a wordpress fan boy now.Simply Something Sophisicated - a WordPress poster

Yesterday I converted Creepy Cleveland from Blogger to WordPress.

I’m hoping most people won’t notice any difference (apart from the cool makeover), but I’m excited about the WordPress plugins I get to try out on a blog that actually gets some traffic. (Nobody reads this blog, remember?)

Of course, this blog has been a wordpress blog for nearly a year and I’ve got a couple private blogs hosted on my home and work servers (I came up with that idea after Google Notebook went under – you wouldn’t believe what a great idea that turned out to be)

WordPress is famous for their 5-minute install and hundreds of user-contributed plugins.

Oh, and it’s linux-based (of course – well, technically, if you’ve got MySQL and PHP – you’re fine) and it’s free.

Show some love.

Tags: , ,

Say “Hello” to my little friend.

About a year ago I scavenged a “to-be-decommissioned” PC out of our closet here at work and installed Ubuntu Server on it.  I stuck it under my desk and proceeded to familiarize myself with some administration tasks.

I installed a LAMP stack and moved my web development stuff over to the new box.

Then I set up a bunch of disorganised CRON jobs to back-up all my files.

I installed SAMBA and set about connecting to our Windows Server.

Then I found instructions online about how to connect to a Novell server, so I created a bunch of mount points and wrote a couple scripts to access our Novell server.

doesn't look like much, does it?

doesn't look like much, does it?

Shortly thereafter, I wrote some new scripts to do some routine nightly file maintenance between our Novell network and our Windows network.

I had an old legacy MS Access application that was giving me fits and I wanted to upsize it to something a bit more robust – so I ported it into MySQL.

Then I wrote a web front end for it.

Then I had an idea to create a corporate help-desk application that would allow users to fill out a form online and submit work requests to our department.  Simple, but effective.

One day we were overrun with viruses (annoyances, actually) that our current corporate anti-virus wasn’t aware of yet.  So I installed Avast Antivirus on the linux box and spent a couple weeks cleaning up flash drives, memory cards and external media of all sorts until the corporate AV got updated with the new virus signatures.

Most recently,  I’ve embarked on another we-based front-end to a older application.  Sticking it on the web will save tons of money on paper alone.

While modifying my cron jobs to backup the most recent project files, I began to remember this machine’s humble beginnings.  Destined for the trash heap, linux breathed new life into an old machine and turned it into a little workhorse.

Eventually, I’m going to need to move my files onto a larger, more secure machine, but I think I’ll keep this little baby around long after that.

Tags: , , ,

Converting my cellphone videos

I’ve got an LG ENV2 cell phone and it takes pretty decent videos (for a cell phone). The problem is that I’m stuck watching the finished videos on a tiny screen. If I play the videos I copy off the SD card onto my computer I don’t get any audio.

One solution is to upload the videos directly to YouTube:

YouTube does the conversion and maintains the audio in the resulting video.


But what if I don’t want to go through the trouble of uploading and waiting for the video to be converted? Linux to the rescue!

First of all, install ffmpeg and mencoder:
(actually, I’m not sure if you need ffmpeg or not. In my case it didn’t hurt anything.)

sudo apt-get install mencoder ffmpeg

Then copy the video(s) to your computer, open a terminal window and change to the directory in which you’ve copied the files.

Then run mencoder:

mencoder input_filename.3g2 -o output_filename.avi -oac mp3lame -ovc lavc
  • mp3lame is the used audio-codec (here mp3)
  • lavc is the used video-codec (here libavcodec)

After the conversion is complete you should have a playable (audio included!) .avi file in the same folder! Easy.

Here’s a video I just pulled off my phone and converted –
Happy Birthday Max!

Tags: , ,

Not As Dumb As I Look.

It took me all day long.

It’s official. The Toughest Developer Puzzle Ever is alive and kickin’. Prepare to have your mind bent, your skills tested, and, if you’re fast enough, your home mailbox filled. That’s right. This contest will provide the first 15 people to complete the puzzle with a prize. We’re not talking about happy meal toys here, either. This is a substantial prize, valued at over $25, and another challenge in and of itself.

You’ll also get your name recorded on the site as proof that you were wise enough to make it past all 30 levels. Feel free to call it TDPE. We are. There’s also a Twitter account for it. @tdpe

So what are you waiting for? Head over to http://toughestdeveloperpuzzleever.com and get started. You will be tested.

I finished the damn thing! All 30 levels. I’m done.

I got an email from the developer saying that I was one of the first fifteen finishers and eligible for some kind of prize! (Sweet!) I’ll keep you updated.

Tags: ,

Dumber Than I Look

I’ve spent way too much time on this today.

It’s official. The Toughest Developer Puzzle Ever is alive and kickin’. Prepare to have your mind bent, your skills tested, and, if you’re fast enough, your home mailbox filled. That’s right. This contest will provide the first 15 people to complete the puzzle with a prize. We’re not talking about happy meal toys here, either. This is a substantial prize, valued at over $25, and another challenge in and of itself.

You’ll also get your name recorded on the site as proof that you were wise enough to make it past all 30 levels. Feel free to call it TDPE. We are. There’s also a Twitter account for it. @tdpe

So what are you waiting for? Head over to http://toughestdeveloperpuzzleever.com and get started. You will be tested.

I’ve only made it to level 22. 22 levels out of 30. I’m stuck.

But, I bookmarked puzzle 22. I might be able to solve it after a break.

Or a nap.

Or a lobotomy.

Tags: ,

Surrounded by Luddites

LUDDITE
Pronunciation: \ˈlə-ˌdīt\
broadly : one who is opposed to especially technological change

First of all, let me say that this isn’t meant as an insult to my friends. Hell, if you’re reading this post then that very act excuses you from the following. Relax.


I’m what you call an early-adopter. If I had the money my house would be stuffed with the latest and greatest technology gadgets. I’m always trying new social-media websites. I’ve got a FaceBook and a MySpace and Twitter and a blog. And they all send messages to my cellphone.

All this stuff has promised to make it easier to do things better. I’ve got ideas. But I’ve encountered a road-block.

I’ve become frustrated trying to convince the people around me to embrace technology.

Hell, an embrace may be too much to ask, I’d be happy if I could get my friends to shake hands with technology.

I’ve read that Google insists that it’s employees work one day a week on their own projects. They call it 20% Time. It’s part of the philosophy that says it’s possible to create great things without formal budgets, plans or management support.

I like to think that I do something similar by spending time creating new web pages and applications at work. The fact that the things I create aren’t mandated by management allows me to try things that I know will fail. But it also allows me to test the water to see how feasible an idea really is. Take the humble wiki for instance…

Once upon a time we each had great big binders filled with documentation. Whenever someone generated new docs we were responsible for getting everybody else a copy for their binders. Of course, in about three months, nobody’s binder was up to date anymore. Moving that amount of paper around was beyond our abilities. So three years ago I created a wiki for use in our office. I understood at the time that there is a slight learning curve to using a wiki, but hoped that the ultimate advantages would outweigh the cost of training (there was no cost – it was free software – I just wanted people to try it). It would be far easier to have several people maintain one copy of everything than to have one person maintain several copies.

Alas, it was not to be. Certain users couldn’t grasp the concept of seeing the material on the screen. Some could never remember their password. Others could never be convinced to check the wiki for the information they were looking for. So now, we were not only unable to maintain great big binders, we were also unable to use a common repository of information. Unbelievably, I had actually made it worse.

My next idea was some kind of Content Management System (CMS). Hoping to take the burden of learning something new off my coworkers, I set up a portal where we could post information in a forum format. I could administer the application, they would just need to start filling it up with wonderful data! But again… failure. Most had never seen such a thing and couldn’t grasp the concept. It turned out to be far too tedious to re-type all our scattered notes and documents into one system. PDF’s would have to be created, diagrams would have to be updated and once again – nobody wanted another password to contend with.

Never to be disuaded, I came back the third time with a self-designed portal web page. On this page, I linked to all the different toys and experiments I’d come up with over time: three different help-desk applications, two CMS’s, a blog and a wiki. I even recently installed laconica – a Twitter clone for use just in our office. I hoped that maybe it could replace short emails we send to one another.

Laconica lasted exactly one day.

I’m running out of ideas.

I’ve begun maintaining my own wikis for notes. I have one at home and one at work stuffed with the hard-to-remember minutae of my daily life. I still think it’s a great idea. I’ve started a couple WordPress blogs where I use the “Press This” functionality to capture webpages to use for future reference. Another fine plan.

But my social-media applications aren’t very social.

Tags: ,

Hardy to Jaunty = PITA!

So I’ve been messing with python again lately and have been having fun writing some scripts to do tedious maintenance on my MySQL and SQL Server installs. I’ve got a desktop running Ubuntu’s Jaunty Jackalope and once I got things working the way I wanted, I tried to copy all the scripts over to the work laptop. (Running Hardy Heron)

I ran into a problem trying to install pymssql in Hardy. I couldn’t find it in the repositories. That was weird, but possible. So after googling for a while and getting no where, I just decided to upgrade the laptop to Jaunty (figuring that I’d be able to install pymssql once I was running Jaunty)

I set about following the script I got from here: How to Upgrade Ubuntu 8.04 to Ubuntu 8.10. Knowing that I had two separate upgrades (Hardy -> Intrepid, Intrepid -> Jaunty) to do, I started the upgrade from Hardy to Intrepid first.

Well, about halfway through the upgrade failed. I don’t know what happened, but it looked like the wireless connection burped or something and only about half the packages downloaded. So I restarted it. After watching it for a while I thought that maybe doing this over a wireless connection wasn’t the best idea. So I Control-C’d the upgrade and hooked up the laptop to my router with a nice long cat5 cable. I felt pretty good about myself, because the downloads were moving a lot faster too.

Once the upgrade finished I restarted and noticed some weirdness. The boot screen started scrolling by and I could see things like “update failed” and “read-only filesystem”. Soon after I was looking at my desktop. Hmmm. Well, maybe some of the packages got corrupted during the two interruptions during the download. Figuring that the Jaunty upgrade would fix it, I started phase two.

Long story short – it didn’t. I wound up looking at a “read-only filesystem” with no access to the terminal from X. Booting into recovery mode and starting GDM manually undid the read-only part, but I still didn’t have a terminal (I kept getting something about a child process failing).

By this time it was late and I didn’t want to screw with it anymore, so I left it til this morning, whereupon I decided I didn’t want to mess with it then either. With the help of the recovery console, I was able to back up my home folder and I popped in a Jaunty install disk.

Twenty minutes later all was back to normal. Restoring my programs was easy and copying my documents back over was a breeze.

(NOTE: I recently had the occasion to reinstall Windows XP on my sister’s machine and I can tell you, without a doubt, that Microsoft needs to take a look at the Ubuntu install process. Ubuntu – yay! Windows – DAMN IT!)

So what did I learn from this?
1.) With big upgrades like this – always go wired! Wireless is too slow and the possibility of error is too great.
2.) Only upgrade to one release at a time. If you want to go more than one release, it’s easier to back things up and start fresh.

But, in the end, it was fun and I learned something so… cool.

P.S. Against my own advice, I recently upgraded a server machine at home from Hardy to Jaunty with no problems using the same steps I attempted above. The only difference? The machine was wired the whole time. Maybe that really was the whole problem?

Tags: , , ,