Tagged as: Life, Software
May
22
Expectations. We have them about all kinds of things. Sometimes we base them on our experiences, but more often we seem to base them on our hopes and dreams. We can have them about things like birthdays, get-togethers, and other events. In our mind’s eye we see people being caring and loving, friendly and jolly. It’s not always so, is it?
But besides that, we can even have expectations about much more concrete matters. When we sit in the chair, we have that dreamy expectation that the chair will hold up our weight. If that expectation isn’t met, we sure aren’t too happy! And so it goes moment by moment with all sorts of things that we encounter.
More recently I’ve noticed how much people do this with things that they don’t understand. Or rather, I’ve noticed how this comes into play when people are dealing with those things that most of us do not fully understand. Things like televisions, computer programs, and automobiles will all sorely disappoint us when we expect them to work and they do not. But when we don’t know what to expect, and things work how happy are we?
When we try out a shortcut key and find that some programmer has made sure that shortcut key works aren’t we pleasantly surprised? Or when we go to a website, make a guess at what to do, aren’t we glad for whoever made it work just so?
I emphasize the computer software, but it’s obviously more.
Tagged as: Internet, Life, Music, Rant, Software
Apr
23
Alright so I don’t actually know any ninjas. Pirates, though? Perhaps.
Not the pirates that say, “Arggh me matey” or have a peg leg or even have a parrot on their shoulder. That would be cool, but I actually only know pirates in the modern day sense. You know the ones that illegally consume things like music, videos, software, pictures, or any of a whole range of things. Haha I can hear the groans already.
The digital age has made it infinitely more easy to exactly duplicate other content (which is related to why digital things are superior in quality to analog). With this, people have degenerated to outright stealing while not even understanding what they’re doing. Well I hate to break it to you, but wrongs committed unintentionally are still wrong.
While I have written that I think that Music Piracy Makes People Stupid, this issue is far larger than just music. Music is the best known, probably because it’s the area that’s most often violated. It is so much more widespread, though. So let’s get down to the real issue.
Breaking Down Piracy
- Someone creates something for a purpose
- Somehow it’s made available to other people (whether stolen, hacked, copied, or what) outside of the realm of the original purpose
- You (or a “friend” of yours) gets a copy of said good and utilize it
Is that pretty much how it breaks down? Seems to me like the real issue is that the creator/writer/actor/musician/whatever did not intend for those in step 3 to make use of their creation. If I were a computer programmer and wrote a program to sell. And then if someone had illegally hacked my program that I worked to create to sell and gave it away for free, I’d be piping mad. If you were a photographer and had taken a picture for someone, but someone else had taken it and used it for a totally different purpose, you’d be up in arms. If you provided services (law, medicine, therapy, teaching, what have you) and someone took your service without providing payment, you’d see that something was immediately wrong.
So basically, since the creator didn’t want it (and who hopefully created a bulletproof license or end user agreement), you’re undermining what they’re doing. It doesn’t matter that you could create a digital copy of their song without paying for it and they’ll be none the wiser. Because in actuality, it does affect them. You should have paid them for that song. And you are now a pirate. But you don’t have to be!
Dealing With This New Ninja World
Is all lost? Far from it. Once you understand what it’s like to be the one being defrauded, you’ll see that something needs to change. And there is a solution! There are all kinds of answers! Maybe watch things that are actually released by the studios (try out Hulu), actually buy music (if you’re listening to music you can probably afford to pay for it) or try Amie Street for the whole indie scene, and possibly even catch up on some of my Favorite Open Source Apps.
Or you could just become a real ninja and then you’d care about arrows, ninja stars, and ninjato rather than swiping versions of old TV shows, Adobe Photoshop, and/or the remix version of Justin Timberlake’s latest single. 
Tagged as: Geek, Learn, Software
Oct
25
Hard drives consist of many bits, configured in a particular way (of which the explanation is far far beyond the scope of this blog post). But needless to say we like to view the hard drive as a block of space that we can store things in. The hard drives each have partitions setup on them, the most common case being a single partition for the operating system and all of the data.
However this is not exactly what a lot of people want. Sometimes they want different partitions because they want different operating systems on the same computer, but more often it’s just because they want some kind of division between their data and their operating system, applications, etc. For more reasons, check out the purpose of partitioning according to wikipedia.
When you install an operating system for the first time, it has a partitioning tool that allows you to choose how you want to partition your new hard drive. Well often if you buy your computer retail then they’ve already set it up for you. But if you were to actually go through the entire process yourself, then you’d likely partition the hard drive with the operating system installer’s tool.
But then, what if your hard drive is currently set up differently than you want? What do you do once your data is all over your drive? Well you have a couple of choices. You can either completely format (and erase) your hard drive and start from scratch. This is obviously not going to be your first choice if you have data on your hard drive already as that would involve backing up and restoring all of your data. That seems like a rather long process unless you’re having serious errors and really do want to start from scratch (which is sometimes the desired outcome). So the other option is to use some software to re-partition your hard drive while maintaining your data.
Norton PartitionMagic Replacement
Many people know about Norton PartitionMagic in order to do exactly this task. But after eschewing that (in my mind) expensive software, I would highly encourage everyone to check out the free and open source Parted Magic. That is what I used! It’s a LiveCD (which means that you download it, burn it on a cd, insert it into your computer, and boot off the CD. It utilizes the Gparted application for the partitioning duties.
It was a snap to use when I recently upgrade my Ubuntu installation from Feisty Fawn (7.04) to Gutsy Gibbon (7.10) (don’t you love the alliterative names, I know that I do).
In order to use just:
- Defrag your hard drive
- Download the .iso image
- Burn to a CD as a disk image
- Insert into computer
- Boot to the CD (you might need to change a BIOS setting or two in order to do this)
- Create, resize, modify your partitions and keep your data intact!
Tagged as: Geek, Mac, Software
Sep
25
Well after Unboxing My MacBook Pro, I got right on getting my new computer setup the way that I wanted it. A big part of this is downloading and installing applications that I want to use. Macs are often purported to be ready to use out of the box. While generally true, there are many areas where I already knew of a application that I preferred to use over the installed one (if the installed functionality even existed). For those interested, I’ve included a list of the programs that I installed. Check it out and maybe you’ll find something useful for yourself!
Oh and I grouped the applications into categories so adding up the number to 17 might take a little bit of mental math on your part. Then again, you could just take my word for it.
- Utilities
- Quicksilver - A very popular application that allows you to access a lot of things through a single interface. It allows you to treat things as objects, which is very cool and very useful.
- Virtue Desktops - A virtual desktop application that has cool effects. Unfortunately this project is no longer under development because of the impending Spaces feature of the next version of Mac OS X (Leopard). It’s still a good one, though.
- smcFanControl - Monitor and increase the speed of your fans. This is pretty useful to use on my MBP because even though it seems stable, it can get hot. I raise the fan RPM for higher load situations.
- Monolingual - On suggestions, I realized that there was unnecessary space taken up by localization files. Found this easy-to-use program that will remove the localization files for all of your applications! Saved a couple of GB.
- AppCleaner - When you delete things on a Mac, they give you the impression that you’re completely done. That there’s no hassle of “uninstalling” programs like in other operating systems. But that’s not entirely true. They will actually leave things behind. Use this free application to completely remove applications when you want to get rid of them!
- Productivity
- Open Office - This free cross-platform suite of office programs is great! This requires that X11 be installed as well, but in truth this is an excellent substitute for purchasing Microsoft’s suite. Check it out at least before purchasing MS Office for a large amount of money (compared to free).
- Web
- Firefox - The (now) ubiquitous open-source web browser is a must. I would try Camino (and I still might), but I love the extensions on Firefox too much at this point.
- Adium - The Mac OS X port of the popular Gaim (now Pidgin) chat client.
- CyberDuck - A great FTP and SFTP browser. If you don’t know what FTP and SFTP are, then you won’t need this, but if you do then this is absolutely a good application to look into.
- Programming
- Xcode Developer Tools - A necessary first step if you want to develop applications for Mac OS X. It’s an Integrated Development Environment that I’ve only tinkered with to make some sample apps but with which I fully intend to use in the future.
- Aquamacs - My favorite text editor (Emacs) lives as a fully native port to Mac OS X. Nice. Really, really nice.
- iTerm - Some nice features (tabbed sessions, bookmarks) to have on top of the default Terminal.
- Media
- GIMP for Mac OS X - The best full-featured, open-source image modification program I know. Needed to install X11 from the Install DVD, but that’s no big deal. Don’t think that they’re going to make a Cocoa version of this, but I just found GTK+ for Mac OS X so that GTK+ apps (like GIMP) can run the apps without X11. Maybe I’ll try to see if I can help out with that project…
- VLC Media Player - This media player can handle anything and everything (okay almost) that you throw at it.
- iRecord - Going to (haven’t yet) use this program to schedule and use my MBP as a Digital Video Recorder through my cable box. What does that mean? Hopefully being able to record HD content to my MBP! VLC is necessary for this task as well.
- Audacity - An excellent program for recording and modifying audio. Pretty necessary for me right now since I’m in the process of digitizing a good-sized vinyl record collection.
- Handbrake - A DVD ripper. Never used, but have heard lots about. Will be useful if I want to watch a DVD without taking the DVD with me.
I’ll probably have another post about getting interested in setting myself up with programs that will help in utilizing cross-platform applications. Let me know if you have any others to add, and I’ll consider using it if it suits me. Found any of these to be useful and you hadn’t heard of them before? I’d love to hear (and I’m sure the developers of the applications would too!).
Tagged as: Geek, Learn, Life, Programming, Software
Aug
21
So as you very well know, there is software. Now for many, this is a nebulous term that doesn’t really mean much to them until it results in a program that allows them to accomplish something. And that’s just fine. But what is interesting is that there is a methodology to software development that is actually pretty useful in everyday living.
You don’t have to be a software developer to appreciate ideas that will make your life easier or better now, do you? So don’t be scared if you’ve never heard the terms, just think about the ideas.
Anyways, these are just a few of the ideas that I’ve thought were useful:
- Leave lots of notes (well-commented code) - Just as in coding, you (should) know what you’re doing at the exact moment that you’re doing it. However, how many times do we do something and then either leave it undone or pick it up again at another time. A prime example of this are those leftovers in the fridge. You threw them into the refrigerator last night after dinner just to get things cleaned up. Then you go get some groceries, put them in, and happen to push those leftovers to the back of the shelf. You find a tupperware in a few days and you are not really sure what it is or how old it is. A good comment from yourself when you had put it into the fridge would help you quite a bit right now wouldn’t it?
- Let objects perform functions that they were intended for (object-oriented programming) - How big are the toasters with lcd screens? How much do you want a pot that has a handle with the temperature as well as a clock, an alarm, and a remote control? Sure you could scoff at such ideas, but in reality it’s much more efficient to use objects for their intended purpose. When objects have specific functions, you will immediately know what object to use when it comes time to perform a particular task. Don’t try to open a bottle with a screw driver, you can get diseases from the rusty nail that you were screwing in the garage the other day. Don’t use the same sponge to clean the counter as the dishes that you eat off of for the same reason. Using objects for purposes other than their intended one can not only make you look cheap, it can introduce errors that you would not have thought of. Also they’re better than huge, all-encompassing programs/objects because when some part of it breaks it is easier to fix and there is less loss of function. The television with speakers, a subwoofer, a built-in dvd player, a vcr, audio receiver-like capabilities and numerous other parts is more likely to be completely useless if one of those parts breaks than individual components, is it not?
- Fix when needed, upgrade when necessary (don’t get left behind the ages with nasty-to-maintain code) - When something breaks, you have choices. You can get it repaired to the state that it was before or you can upgrade and buy something. So I guess you have a few choices in what to buy as well. You can buy used or new. In software development, there are many tools that you can use. There are code editors, programming languages, and many other tools. There is an unfortunate tendency for some, just as in life probably, to hold on to the old tools and languages simply because that’s how it’s always been. Sometimes we need to take a step back and re-evaluate the state that we are in and whether it is worth it to move on to something bigger and better. It’s not worth it to keep that old junker of a car if the repair costs cost more than a brand new automobile.
- Understand how something works rather than specific tasks (similar to concept programming) - Do not limit your knowledge to specifics. Understand the driving force behind the specifics and then the specifics will become clear. This is a rather basic idea that translates to all types of fields. However, in my opinion, it seems to hold a lot of weight in the programming world because there are very many different ways to express the same idea. Notably, programming language choice can very easily decide how a particular goal will be achieved. In the real world, if you want to program a VCR, it is much more useful to understand what you’re doing (setting a timer and settings on the VCR in order to turn on and start recording) rather than simply memorizing the sequence of buttons to press in order to set the timer. It’s going to be pretty tough if you suddenly purchase a DVR and you don’t really understand what you’re trying to do with it.