Tag Archives: Computer Tricks

How to build your own computer

Almost every resource on the Internet on building your own computer is oriented towards building a gaming computer. The second most common discussion is how to build a “budget PC.”

When I sought out the latest information on building a computer a few weeks ago, I did not like either of these two options.

A “gaming computer” is oriented towards two features: a) overclocking your processor and b) having one or two mondo power-hungry and gigunda graphics cards. A “budget PC” is an under powered machine that replicates what I could have purchased in many forms for less than the cost of a build.

My intention was to build a computer that would be able to crunch large amounts of data quickly, allow a large number of normal applications to be open at once, to be able to handle multiple very large text files, and to do mid level audio and maybe video editing (even if that required shutting down other software). Also, I wanted the computer to be 200% to 300% faster than my currently fastest computer, which is an Intel I7 holding laptop that is several years old.

I had on hand a small pile of “hard drives,” including one 2.5 terabyte hard drive, and one 125 gigabyte solid state drive (not called a “hard drive” by many, but it is essentially the hard drive.) I also had a case, and a keyboard, and a collection of monitors. I also had a case. The fact that I already had a case turns out to have been a big problem, and I’ll discuss that below.

I decided to go for an Intel I5 but a higher end one, which would give me that 300% performance increase required to make me feel like I had something new and cool, but to put in in a motherboard that would likely handle a later upgrade to a faster I7, if I made that upgrade within a year or two. Also, the mother board had to be able to handle 64 gigabytes of RAM because the best way to meet the requirements listed above is not with multiple processors or multi threading etc., but with a whopping amount of memory.

Here is a list of the parts that I bought to assemble:


GIGABYTE GA-H270-HD3 LGA1151 Intel H270 2-Way Crossfire ATX DDR4 Motherboard

This motherboard costs about 100 bucks. It handles sixth and seventh generation Intel Core processors, and Dual Channel DDRF4 memory, and has graphics support on board. It does not have a lot of other bells and whistles. It is supposedly sturdy and has high ratings everywhere I’ve looked.

The documentation on the motherboard is very well done. I’ve referred to it many times while messing around with this build, so I should know.

Processor (CPU)

Intel Core i5-7500 LGA 1151 7th Gen Core Desktop Processor (BX80677I57500)

As noted, I chose the I5 for just under 200 bucks instead of an I7 for more. The old I7 in my Dell Laptop, which is a reasonable computer, has a passmark rating of somewhere beteen 2000 and 3000. This process is just over 8000. I don’t know much about passmark ratings, but I know more is better and most normal fast processors produced today that you would actually buy are in the 8000 to 9000 range, so this is good.

The key number here is 7500, which makes this a seventh generation processor. Here is a key point: This mother board and this processor are claimed to work together, and I can tell you that they do. A lot of other motherboards require bios upgrades or other fiddling to make them work with the most current processor.

Anticipating something I’ll be discussing below, yes, this motherboard and processor combination work fine with Linux. It never occurred to me to worry about that, because Linux works with everything, but in case you were wondering, it does. I do not know if this configuration can be a Hackintosh or not.

Cooling system

I used the cooling fan that came with the processor and it works fine. I’ve checked the temperature readings and the processor does not get hot. However, I think the fan that came with the processor is a bit noisy. I intend to install a different cooling fan to see if it is quieter, and the one I got to do this is the Cooler Master Hyper 212 EVO RR-212E-20PK-R2 CPU Cooler with 120mm PWM Fan, which happens to be on sale right now for 30 bucks. I’ve not installed it, installation looks to be a bit complicated and I don’t know how I’ll like it, but that’s what I have sitting here on my workbench.

Power Supply

My build does not need a fancy power supply. The EVGA 450 B1, 80+ BRONZE 450W, 3 Year Warranty, Includes FREE Power On Self Tester, Power Supply 100-B1-0450-K1 is inexpensive and highly rated. It is onlyh 450 watts. If you are using a graphics card or two you may need to upgrade beyond this.


The motherboard does not have Bluetooth or wireless. I got the MIATONE Wireless Bluetooth CSR 4.0 USB Adapter Dongle for PC with Windows 10 8 7 Vista XP 32/64 dongle to give me Bluetoth, for seven bucks. Works with Linux. Note: This is a USB 3.0 device, and it won’t work if you plug it into a USB 2.0 port. I found out.

My Wired Networking Thing

This motherboard does not have a wireless card. It does have an ethernet jack. You probably don’t even want wireless if you have a LAN nearby. In my case, temporarily (until I drill some holes in the house) my nearest LAN device is not in my office. I wanted the computer’s LAN to be hooked to the network, so when I do get around to bringing a router or switch into the office, I’ll just change what it is plugged into. So, I got the IOGEAR Universal Ethernet to Wi-Fi N Adapter.

This cute little device is basically a wireless router that hooks into your wireless LAN, and pretends to be an ethernet jack. It can get its power from a powered USB port or it can use a USB charger brick, which is supplied. Works great.


As noted, I have a pile of displays laying around but they all suck. I bought a Dell SE2416H 24″ Screen LED-Lit Monitor. I had purchsed one of these from Best Buy for about 135 for a different computer. I got this one for about the same price from Amazon. The price of this monitor ranges from 120 to 190. There is also a version that is higher grade, as in, more finely tuned up but with the same specs, for a bit more. Right now, I’m using this and second, older, display, and things are working fine, but eventually I intend to get a second Dell 24 inch. This is obviously a very personal choice and people will have strong preferences. I may get the upgraded version of this monitor when it comes time to getting the second one, see below. (Reminder: This is not a gaming computer.)


Given the mother board, I went for fast. Also, since I want to eventually have 64 gigabytes, I went for large. So, I got one chip of G.SKILL Ripjaws V Series 16GB 288-Pin DDR4 SDRAM DDR4 3200 (PC4 25600) Intel Z170 Desktop Memory Model F4-3200C16S-16GVK with 16 gigs on it. I will add a second, third, and eventually, fourth chip over time.

The motherboard and memory uses a dual channel technology, which allows for effectively faster RAM. But with only one chip installed, I don’t get the dual channel effect. So, when I buy the second chip, I’ll be both increasing RAM to 32 gigabytes, and unlocking the dual channel technology, so that may be a noticeable upgrade in my future.

Here is a list of parts that are rough equivalents to the parts I had on hand. This list together with the list above will produce a full working computer:

Computer Case

I had an old case that had never been used and that is supposed to be quite. It isn’t especially quiet, and the front connectors don’t include some of the modern things computers have (it is about 12 years old) and does include some things that are fairly arcane. I regret not just getting a new case. But then, when I look at cases, I realize that I want a really good case. But, like computer build documentation, cases are either crap-budget or gamer cases, and I want neither of those. I list a case below that might be a good one to get, and if I do get that case, it will be the most expensive single element in the whole build. But it might be worth it.

Second Monitor

An old RGB monitor that works.

OS “Hard Drive”

Something like this: Samsung 850 PRO – 256GB – 2.5-Inch SATA III Internal SSD (MZ-7KE256BW). I installed the operating system on it.

Data Hard Drive

Something like this, on which I keep files: Seagate 2TB BarraCuda SATA 6Gb/s 64MB Cache 3.5-Inch Internal Hard Drive (ST2000DM006)


I like mechanical keyboards, and had this one: AUKEY Mechanical Keyboard with Blue Switches, RGB Backlit 104-Key Gaming Keyboard with Preset and Customizable Lighting Effects for PC & Mac Gamers

Mouse and Mousepad

There are advantages to having a wired mouse, and if you use a laser mouse, there are advantages to having an appropriate mouse pad. Or you can just get some wireless mouse of your choice. Currently am using these:

TeckNet Pro S2 Ergonomic USB Wired Optical Mouse for Laptop Computer, 6 Buttons, 2000DPI

3M Precise Mouse Pad Enhances the Precision of Optical Mice at Fast Speeds and Extends the Battery Life of Wireless Mice up to 50%, 9 in x 8 in (MP114-BSD1)

Here is a list of parts that I have not gotten yet but as I do I’ll be adding them to the computer.

Better second monitor

Dell S Series Screen LED-Lit Monitor 23.8″ Black (S2418H) or similar

Better case

Something like be quiet! BGW10 DARK BASE PRO 900 ATX Full Tower Computer Chassis – Black/Orange, because I want a full size ATX case that is quiet.

Building the computer

Take your time.

Get a magnetic screwdriver that fits your screws, probably Phillips.

Some people like to ground themselves with various grounding devices (such as Rosewill ESD Anti-Static Wrist Strap Components RTK-002, Black/Yellow) when they are building computers.

Start by putting the processor into the motherboard, then put the motherboard into the case, then the cooling fan on the processor, and the ram in the slot. You can change around the order of these things if you want. You’ll need to put some goop (such as Thermal Compound Paste, Carbon Based High Performance heatsink Paste, Thermal Compound CPU for all Cooler computer PC Fan) between the CPU and the CPU fan, but that will probably be supplied with the fan, most likely already smeared on the correct location.

Then put the hard drives where they are supposed to go, screw in the power supply, anything else that is not hooked up, and hook up all the wires.

Then attach a keyboard, mouse, and monitor, and turn the thing on. It will work fine.

Hint: A motherboard does not “turn on” until if has power from the power supply (and the power supply is plugged in and turned on) AND the motherboard gets a signal from the case’s off/on switch.

Installing the Operating System

Set up a USB stick to be bootable, insert it into the appropriate slot, turn on the computer and select the function key that switches the boot process to a boot menu. Pick the likely choice for the USB stick, and run through the install procedure (just follow the instructions and mostly pick defaults).

Since I have a second drive for data, I created a new partition using the whole drive (ext4) and added the UUID code to the fstab file, mounting it as “/hdd” and put my Dropbox folder there. Dropbox complained, I ignored the complaints, and so far so good.

You can use a service like PC Parts Picker to work out compatibility.

For me, this was worth it. I could not get a computer this powerful and with this configuration for this price (I did explore that option). Also, I’m getting some parts later to increase the overall quality of the build, such as RAM and a monitor and probably some other things, so even if the total cost is the same or slightly more than an out of the box computer, I’ve got added flexibility that I like. Plus it is fun.

Building a computer is fairly easy, and nothing can really go wrong. If it does, I don’t know you, OK?

Good luck!

Python Programming To Automate Common Tasks

Automate the Boring Stuff with Python: Practical Programming for Total Beginners by super Python expert Al Sweigart is a pretty thick intermedia to somewhat advanced level programming book.

It covers how Python works, so someone familiar with programming languages can get up to speed. Then, the book tackles a number of key important tasks one may use a computer for. This includes working with Regular Expressions, file reading and writing, web scraping, interacting with Excel spreadsheets and PDF files, scheduling things, working with email, manipulating images, and messing around with the keyboard and mouse.

I wold like to see a second volume with yet more programming ideas and examples. It could be a series.

From the publishers:

If you’ve ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you?

In Automate the Boring Stuff with Python, you’ll learn how to use Python to write programs that do in minutes what would take you hours to do by hand—no prior programming experience required. Once you’ve mastered the basics of programming, you’ll create Python programs that effortlessly perform useful and impressive feats of automation to:

  • Search for text in a file or across multiple files
  • Create, update, move, and rename files and folders
  • Search the Web and download online content
  • Update and format data in Excel spreadsheets of any size
  • Split, merge, watermark, and encrypt PDFs
  • Send reminder emails and text notifications
  • Fill out online forms
  • Step-by-step instructions walk you through each program, and practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks.

    Check it out.

    Learn Scratch Programming (For Kids And Adults)

    Scratch Programming Playground: Learn to Program by Making Cool Games is a brand new offering from No Starch Press.

    scratchprogrammingplayground_coverNever mind all the other programming books for kids, this is the best so far.

    It helps that the Scratch Programming environment is so easy to use and allows such creative development, and it also helps that Scratch is likely to be a programming environment for basic robotics in the future (as I discuss briefly here). But the book itself is excellent, and works at several levels. A young kid working with an adult, a medium level kid working on their own, or an adult playing on the computer after the kids have gone to bed.

    Scratch is in the Logo family of object oriented programming. Indeed, Scratch itself, as a language, is a very short distance from the original object oriented programming, much closer to the source than many professional object oriented language.

    screen-shot-2016-10-28-at-8-55-57-pmIt works like this. See the graphic to the right. This is code that controls a “sprite” which in this case is a picture of a ball.

    The light brown C-shaped things are control constructs. An outer one called “forever” contains code that will be run from the time the program is started until it is stopped externally. Inside that is an “if” loop that checks to see if the object “paddle” (specified in the blue object) touches the sprite (ball). If that event happens, then the code inside the “if” thingie is executed. In this case, the variable “score” goes up by one, a funny little blerp sound is made, and the ball turns in the opposite direction.

    Meanwhile, the paddle has a wadge of code that goes with it as well, which responds to key presses or mouse movements, so that the paddle can be used as part of the bouncing the ball game. And so on.

    screen-shot-2016-10-28-at-8-55-24-pmIn the code block on the left, contact between a pirate (a sprite) and a leaf causes the leaf to disappear and the pirate to get a score for making the leaf disappear.

    You can imagine the possibilities.

    So, imagine the following game. A complex maze is on the screen. The player uses arrow keys, etc., to move a tiny cat around in the maze, working the cat from the beginning to the end. At the end, there is a hole that the cat goes through, and now the cat is in another maze. And so on for several mazes.

    Are there objects in the maze the cat must avoid? Or obtain? Will you time how long it takes to get through each level? Will you keep a high score? Will you have two cats, with two people controlling them, each moving in opposite directions through the maze?

    The code examples I give above are not from Scratch Programming Playground, but the maze example is. It is one of several projects that the book works you though, as you learn all the various programming concepts in Scratch 2.0. The programs you learn to code produce complicated results and are really spiffy, but the programming itself is easy and the code is not extensive, because Scratch 2.0 is so powerful yet easy to use.

    Each example, such as the maze, is fully developed, and then, new versions (like having the second player ability, etc.) added, and by the time you are done with that example, if not sooner, you are already adding things of your own design, from your own imagination.

    Scratch 2.0 can be run as a stand along program in windows and on a Mac, but works better on the web, in a browser, on all platforms. Working in that environment, on the browser, has the important advantage of immediate access to a large amount of work done by others, that you can freely borrow from. And, of course, you can show off your own work.

    Scratch Programming Playground tells you how to obtain or set up an account on Scratch at MIT, holding your hand effectively but respectfuly through the entire process. The book is also associated with, as per usual for a No Starch book, a web site with the code and other items used in the book. However, I recommend actually hand building most of this code on your own, so you actually learn what you are doing.

    This is the overview table of contents for the book:


    And this is the Maze Runner project contents expanded, to give you an idea of how the learning and making process is parsed out:


    Note the multiple versions of the project that are developed after the main project is up and running.

    It is possible to figure out how to make a hand held game controller work with Scratch programs, but that will depend on the controller you have and the platform. A USB controller and a bit of software from the web that lets you set up the buttons should work.

    I would not be surprised if future Internet of Things programming, robotic programming, and other coding you might want to get involved in either uses Scratch or follows this model. The mBot robots can be controlled with a version of Scratch, which produces Arduino code for that robot, and there is now a compiler that allows the general use of scratch for Arduino. Arduino is a basic prototyping machine that can run things, as in “Internet of Things” and that is similar to controllers in general, like the ones in your computer, VCR, thermostat, DVD, car, Mars Rover, etc. (Wait, did I just say “VCR” … whatever.)

    A bit of the book giving instruction on a code block to control a tennis ball sprite.
    A bit of the book giving instruction on a code block to control a tennis ball sprite.
    Anyway, Scratch 2.0 on the web, as per Scratch Programming Playground, gives you, er, your kids, great training in all the programming concepts, and with it you basically controls sprites (objects) on a screen. But the same language is already adapted to control a common form of robot (mBot) and has been adapted to program a widely used controller. So, with Scratch Programming Playground, a little practice and nine dollars worth of hardware, you can take over the world! Or, at least, a good portion of the Tri State Area.

    When I do my “Science oriented holiday gift guide” (SOHGG) in a few weeks, this book is going to be on it. Al Sweigart, author, has really nailed a kids oriented programming book better than I’ve seen done before, and I’ve seen them all.

    One liner to turn a column of text into a comma separated list

    You have the following list:


    You want to turn it into something that looks like this:


    All you have is a stick of bubble gum, a broken lightbulb, and a bash shell with the usual tools installed. How would you do it?

    Here are a few suggestions.

    perl -pi.bak -e 'unless(eof){s/\n/,/g}' textfile

    This will produce a backup called textfile.bak and modify the original file.

    A rather involved sed one liner could do it:

    sed -n 's/.*/&,/;H;$x;$s/,\n/,/g;$s/\n\(.*\)/\1/;$s/\(.*\),/\1/;$p'

    Using tr:

    cat textfile | tr '\n' ','

    There are numerous other possibilities. Free to make suggestions. Also, how would you reverse the process?

    Linux Shell Scripting

    I just finished Linux Shell Scripting Cookbook – Third Edition by Shantanu Tushar and Sarath Lakshman. This is a beginner’s guide to using shell scripting (bash) on linux.

    Usually, a “cookbook” is set up more like a series of projects organized around a set of themes, and is usually less introductory than this book. “Linux Shell Scripting Cookbook” might be better titled “Introduction to Linux Shell Scripting” because it is more like a tutorial and a how too book than like a cookbook. Nonetheless, it is an excellent tutorial that includes over 100 “recipes” that address a diversity of applications. It’s just that they are organized more like a tutorial. What this means is that a beginner can use only the resources in this book and get results. The various recipes are organized in an order that brings the reader through basics (like how to use the terminal, how to mess with environment variables, etc.) then on to more complex topics such as regular expressions, manipulating text, accessing web pages, and archiving. One very nice set of scripts that is not often found in intro books addresses networking. The book also covers MySQL database use.

    All of the scripts are available from the publisher in a well organized zip archive.

    I read the e-version of the book, in iBooks, but the PDF version is very nice as well. I don’t know how this would translate as at Kindle book. But, importantly (and this may be more common now than not) the ebook uses all text, unlike some earlier versions of ebooks that used photographs of key text snippets as graphics which essentially renders them useless. Of course, copy and paste from a ebook is difficult, and that is where the zip file of scrips comes in. You can open the PDF file, get the zip archive, and as you read through examples simply open up (or copy and paste) the scripts from the zip archive and modify or run them. Also, the ebook is cheaper than a paper edition and clearly takes up way less space!

    If I was going to recommend a starting out guide to shell scripting this is the book I’d recommend right now. It is well organized and well executed.

    I do have a small rant that applies to virtually ALL tech-related books I’ve seen. There is an old tradition in *nix style documentation of putting certain information in the front matter. Books always have front matter, of course, but computer documents tend to have more front matter than usual. A typical example is this reference resource for Debian.

    Notice all that stuff in the beginning. Like anybody reads any of that, especially the “conventions” section. Proper typography in a code-rich book does not have to be explained in detail. You can see what is code, what are comments, etc. etc. Most of this information should be added as an appendix at the end of the book where it is out of the way and can be ignored.

    On a web page like the one shown here all you have to do is scan down, but in a book you have to leaf (virtually or meatspacelly) past all that stuff to get to the actual book contents. The Linux Shell Scripting book being discussed here has the first actual text on actual page 25 or so (though it is numbered page 8). I recommend moving as much of this front matter as possible to the back.

    But that is a general rant about all books of this sort, which I happen to think of while reviewing this book.

    Some Linux/Ubuntu related books:
    Ubuntu Unleashed 2016 Edition: Covering 15.10 and 16.04 (11th Edition)
    Ubuntu 16.04 LTS Desktop: Applications and Administration
    The Linux Command Line: A Complete Introduction

    Technology News and Stuff

    Microsoft to stop selling Windows XP on Monday from PhysOrg.com
    (AP) — Microsoft Corp. is scheduled to stop selling its Windows XP operating system to retailers and major computer makers Monday, despite protests from a slice of PC users who don’t want to be forced into using XP’s successor, Vista.

    Synchronize directories with Komparator and KDiff3

    f you work some of the time on your laptop and some of the time on your desktop box, making sure that your work is updated on both machines is a must. Many tools can help you accomplish this, from command-line tools such as scp and rsync to generic graphical applications like Konqueror or Krusader, to more specific tools like Unison. Komparator and KDiff3, a couple of KDE applications with interesting features, may offer better ways of syncing your work.Komparator can search and synchronize any two directories. It uses KIO slaves, which lets you compare not only standard directories, but also protocol-based pseudofolders such as smb:// (Samba folders), ssh:// and ftp:// (remote directories via SSH and FTP), and fonts:// (local fonts). Its latest version is 0.8, dated from October 2007, and it’s available under the GPLv2. ..KDiff3 provides more functions than Komparator, but not all are relevant to synchronization. Working with directories, KDiff3 goes further than Komparator — it can compare as many as three directories at the same time (instead of two), simulate the merge operations, do the synchronization in a more “hands-off” way, and even produce backups. More importantly, it can also help you compare specific files (think source files, if you’re a programmer) by highlighting their differences, then merging them. In KDiff3, a merge need not be simply one file overwriting another. If you’ve ever modified a file on one machine and then carelessly made another change to a copy of the file on a different machine, common merging procedures would opt for one of the files, making you lose the changes on the other one. With KDiff3, you could get to keep both changes.

    I’m not vouching for either of these as I have not tried them for this purpose, but it looks worthy of consideration.See Also:Keyboard Shortcuts in OpenOffice.org

    Gedit With It.

    I find myself using a basic text editor more and more often. Even the relatively well behaved openoffice.or Writer had a tendency to do stuff I don’t necessarily want to do with a simple text file, and certainly, something like Word is the work of Satan.For instance, have you ever noticed strange goofy characters that are not supposed to be there in the title of the posts on this blog or elsewhere? That comes from using a text editor. What looks like “Hello World” in both a text editor and a word processor may not really be the same thing, when copied and pasted. Character encodings and all.Anyway, text editors are important, and they are not just for coders. In fact, bloggers need an excellent text editor, as do many normal people.Here is an overview of Linux text editors. I’ll make just a few comments.As the review says, vi (or Vim or Elvis … variants of vi) is installed on virtually every *nix computer. Therefore, if you are a system administrator, you will find …. wait, wait, if you are a system administrator you do not need to learn anything from me about text editors. Move along. northing to see here.OK, the review also discusses Gedit and Kate. I’ve written recently about Gedit, HERE, in what I think is my most under appreciated post … lots of work, good stuff, funny jokes, nobody read it. Go read that to find out more about Gedit. And spornography. And other stuff. Continue reading Gedit With It.

    NASA on your iPhone Touch

    For your iPod Touch:The Phoenix Mars Mission thingie. Gives you two RSS feeds (one for news one for blog) and the weather report on mars. A widget displays the elapsed mission time on mars. I’d like to see this application give us more. Like real time images and possibly the ability to control the Phoenix craft (during time they are otherwise not using it, of course). Here.NASA Photograph of the Day. This is potentially cool. When I went to look at it the first time, it was the lamest photograph I’ve ever seen from NASA. (The street somewhere around the Smithsonian with people waking around and stuff.) But this could be fun. Here.

    Software for your iPod Touch


    An x-ray I took of Julia’s hand. Sorry, it’s a little blurry.
    The main two functions of an iPod touch are: being an iPod (music, podcasts, movies, etc.) and giving you a pocket size web browser. There are several other functions as well, like a calendar and such.Here I want to review a couple of addional applications that you can get for the iPod touch.Let’s start with one of the more amazing items. Because the iPod uses an internal trans-metalic laser technology to pack more than the usual amount of data into its ‘hard drive’ software that directly accesses the API can redivert the laser signal by turning it on AND focusing it in the ‘parking’ positin at the same time. This makes the iPod Touch act as a sort of minature x-ray machine. The software is called ixRay and it is currently in version 1.0, which actually works pretty well. It is available here.i-9c519226fdfdc213157f8f433550c757-greenlighter.gif
    Hey man, cool concert!
    Since you can’t bring a lighter into a theater any more (for security reasons, ever since that crazy terrorist guy tried to blow up a theater flying between Britain and the U.S. using a flaming shoe), it is now hard to show your solidarity with singers and rock bands by holding up your Bic lighter until it burns a hole in your thumb. So instead, just install the software onto your iPod Touch that simulates a lighter … with an eerie greenish flame that in real life would indicate the presence of copper.By the way, if you want to stop this flame from flickering right now, just hit the escape key. It is a moving GIF. This is how you stop moving GIFs from moving.The software is available from haeku, here. Continue reading Software for your iPod Touch

    Optical Character Recognition in Linux

    I don’t think Optical Character Recognition (OCR) works that well, frankly. But it can be done and it can be better than retyping piles of text.It does seem to work nicely when the text is nice and clean on nice clean white paper with a good contract between ink and background and no garbage on the page. But in my experience, when I have those conditions, it is because i have an electronic version already! When I have a PDF file that consists of scans of photocopies, OCR tends to see flecks of yeck as accents (or entire letters) and things get messy. Continue reading Optical Character Recognition in Linux

    Talkin’Trash in Linux


    This file is clobbered…
    Linux and related operating systems are different from, say Windows, in many ways. One is this: When you “delete” a file in, say Windows, you are asked to confirm the operation, then the file is moved to the trash folder, not deleted. In Linux, when you “delete” (remove) a file, it is clobbered. Gone. It is a defunct entity. Continue reading Talkin’Trash in Linux

    How to be more keyboardy

    Being more keyboardy is good. The mouse is good, too. But if you can do more things with the keyboard, those things will usually happen faster and with less mucking around. Also, it is very, very cool to sit there and go “tap tap tap” and have stuff happen on the screen without the mouse. Like in that Star Trek where Scott was forced to use a Mac Classic to design Invisible Aluminum. First he tried to use the mouse as a microphone to communicate with the computer. When that didn’t work, he just went after the keyboard and tap-tap-tap had a design for Invisible Aluminum ready to go. To put whales in.Since most of your time is spent using a web browser, and the main web browser you use is Firefox, I thought I’d pass on a few keyboardy shortcuts. Keep in mind, however, that many keyboard commands are used in common system wide for many different programs, like the first three I’ll mention … they work, in one way or another, in all programs that also use a mouse. Most of the time. Continue reading How to be more keyboardy

    Johnny Lee is TechnoMan (The world’s newest super hero).

    You’ve already seen Johnny’s Wii Remote Hacks … and if you have not go and look. This is not about Wii, or video game, or anything like that. This is about transforming the relationship between technology and society. So if you missed Johnny Lee: Wii Remote hacks please go have a look. It is the TED Talk with a record number of interruptions and the largest standing ovation.Then, com back here and have a look at this other video from my new hero, Johnny Lee:Tracking Your Fingers with the Wiimote Continue reading Johnny Lee is TechnoMan (The world’s newest super hero).

    Classic Shell Scripting

    Having examined Learning the bash Shell (In a Nutshell (O’Reilly)) (see here, here, and here), it is now time to turn to a more advanced reference to help you geek out on your Linux computer. If you want to have only one book on bash, get Classic Shell Scripting by Robbins and Beebe. This book has an excellent mixture of history, philosophy, rigorously described details and creative solutions.For instance, after giving a brief history of Unix (required in all such books) the authors layout the basic principles of what is considered good Unix programming. It is so good I’d like to summarize parts of it for you. Continue reading Classic Shell Scripting