Tag Archive: os x


CutePDF Professional woes

I just switched a friend over to the Macintosh platform.  Love it, hate it, I don’t really care.  😛  He’s been loving it in any event which is what matters.  There have been a few things that we’ve needed to tweak though to get all the same functionality of his old Windows XP system that is running some very archaic proprietary software.  I wish I could call out the developer of this particular package because it’s absolutely one of the worst coding disasters I have EVER seen.  This piece of garbage is a perfect example of what happens when a developer tries to reimplement the GUI from the ground up without using mature APIs/SDKs.  He thought he could do it better…

Stepping back off my soapbox, my friend’s work flow involved using this program to draw a wire frame type of drawing for purpose of design and bidding.  After that, he would print to PDF with CutePDFWriter and then use CutePDFPro to annotate the PDF and modify it in all of the ways that the software that generated the drawing could not.  Here is where the problem came in.  It was extremely baffling and annoying.

We are running Windows XP on his new Mac in a Parallels virtual machine.  This is great because he can patch his system, install all the necessary programs he needs and then freeze a snapshot of it so he can always roll back to a known good state.  Being the minimalist I am, I was trying to keep his new VM extremely clean so it would perform in tip top shape.  When it came time to replicate his old setup, we install the crappy custom CAD program, then we installed CutePDF Pro and CutePDF Writer.  Now when he would attempt to open a PDF in CutePDF Pro, there was a big problem.  The file would instantly bring up ANOTHER dialog that said “file download”.  It would have the options to open, save or cancel and pre-populated was a temp file sort of name with some letter and numbers.pdf.  If you hit save, it would save it where you specified and repeat that loop with a new temp file name with incremented numbers.  This went on and on and on.  I didn’t know what could possibly be wrong so I turned to tech support (last resort, right?)  CutePDF provides only email support so I sent in the request and forgot about it.   I came back to solve this problem 2 weeks later.  Apparently they did end up answering the email but he didn’t notice.

I screwed around with the problem for another couple hours and then finally was going to reinstall so I searched his email for CutePDF to find his product key and saw that they had answered our plea for support.  The solution was simple but completely baffling to me:

“Dear Sir, Please install Adobe Reader 9.0.  That will solve your problem”

WHAT?!?  Are you kidding me?  Of course I tried it and it worked like a charm.  Everything was flawless and back as it should be.  Why though?  This strikes me the same as if you purchased Apple’s answer to Microsoft Office, iWork but when you went to run it, it told you, “Please install Microsoft Office to continue this operation”.

I mean, am I wrong to think that some people use alternatives like CutePDF Writer and Foxit Editor perhaps because they hate Adobe with a passion or if not, perhaps because they may be lighter weight applications that use less system resources and may run better on older hardware?  Having your competitor’s product be a critical requirement for your application to function correctly seems to be a bizarre business choice for me.

I tried to Google around for solutions to this issue and I’m fairly shocked now that I found out what the problem is that more people don’t have the same complaint.  </rant>

Apple’s new Mac app store

I was on the Infosec Daily Podcast tonight and one of the topics we covered was Apple’s new Mac App store. Mainly, since the podcast is security-focused, our angle was that the ‘DRM’ was already found be broken by some simple copy and pasting. That being said, it lead us down a rabbit hole of some further thoughts about the implications of this new app store.

Is Apple’s intention to close up the system and make it more like an iPod Touch or iPhone? If that’s the case, I would just as soon bail now and save myself the money and heartache later. Will I be forced to ‘jailbreak’ my MacBook Pro to obtain the same functionality the current version of Snow Leopard?  Will I want lose the ability to compile packages or eventually lose my command line interface?  I don’t think I’m the only one who would jump ship if any of these possible outcomes came to pass.

On a brighter note, this could be an EXCELLENT unified update management system. Software update is NOT bad in my experience but I do feel the iTunes app store is more effective. Seeing that sort of system come to OS X is exciting. As an added bonus, it’s been said that even apps that you did not originally purchase through the app store will be able to be updated through this new system.  Having a little icon in the corner that just pops up a little red number telling you how many updates are waiting sounds pretty nice to me.  Will Software update eventually be entirely merged with the app store for performing OS-level security updates?  That’s how it works on iTunes with an iPod/iPhone so it’s probably quite feasible and maybe more efficient in the end.

Here are some of my further fetched wishes… Will Xcode install and be manageable through the new app store?  Could ports be merged into the new app store? That would rule! I’d love to have everything manageable through a unified interface but if the past is an indication of the future, this is all wishful thinking. Can I get a command line interface to the new app store so I can update my system over a SSH session?  Definitely asking too much there….

On another tangent, I’d like to direct you to an interesting ‘blog’ post. I say blog in quotes because we’re talking about an HTML 1.0 type document…. Anyhow, it’s Tom Pittman’s vision of a perfect operating system.  The interesting portion is where he feels that OS X was a step backwards from System 9.0. Agree or disagree, he has a couple of interesting points and I feel the whole short document is worth a read.  Could the new app store be a natural progression?  Maybe Apple’s way of “righting the ship”?  It’s all food for thought.

For more information about how the app store is already broken in a DRM sense of the word, check out this link and enjoy….

SecuraBit podcast review

I’ve been meaning to review the SecuraBit podcast for a long time but the most recent episode(Episode 67: We’re all gonna get HAX!) pushed me to do it.  Their format is fairly informal and that has sometimes led to what they refer to as a “SecuraBeer” episode where everyone talks over each other and the topics drift into the gutter but SecuraBit has been REALLY stepping up their game lately and delivering some excellent content.  I would said pretty much everything in 2010 has been great.  They focus on malware forensics, reversing and several other topics along those lines.  I’m glad that I stuck it out with them and kept listening because an earlier review would have been unfair.

That being said, EVERYONE needs to listen to episode 67.  Everyone who uses a computer at all for anything at home, at work, or wherever should hear what there guest, Roger Grimes, has to say about antivirus software, patching, embedded systems and all of the fortune 10,50, 100 & 500 companies of the world.  The message is fairly grim but it boils down to antivirus NOT being a magic bullet.  Roger also mentions how fake antivirus is the number one source of infection that he encounters.  He goes on further to talk about Mac OS X and people’s blind ignorance when it comes to OS X security. He refers to Charlie Miller winning the “Pwn to Own” contest at CanSecWest:

Roger takes a minute towards the end to plug his own favorite operating system, OpenBSD.  Even if you don’t understand some of the things Roger is talking about at the start of the interview, stick it out.  He starts speaking in very plain English towards the middle and the message is something that everyone needs to hear and anyone should understand.

I’m looking forward to many more well-picked interviews on SecuraBit.  It seems that they have finally found their niche.

Your Mac knows where you live

With all of the recent excitement in the security world about people’s concerns regarding smart phones that know your location, a bigger problem has been overlooked.  Most Macintosh users probably don’t realize that there is a feature called “location services” in OS X 10.5 and later.  This feature is not widely publicized but I assure you that it’s there. This feature queries a database and determines your location based on which wifi access points can be seen by your computer every 12 hours or when invoked manually via a web browser or other application.  I’m not sure how well this works in the more rural areas but I live in a suburban area and location services pinned my down within 100 feet or so.  Apple’s statement on the matter follows:

“The data collected to provide your location does not identify you personally. If you do not want such data collected, you can choose to disable the feature, which does not negatively affect your Mac in any way.”

If you would like to test your own computer just go to Google Maps.  See that tiny button under the 4-way arrow in the upper left corner?  Push it.  I tested this under Firefox and Safari.  Thankfully they both had the courtesy to ask me if I would like to allow the web page to query my location.  The thing that struck me odd is that Apple seems to have left it up to the application to ask you if you would like to allow use of the feature.  Potentially a malicious application could use this in the background without your knowledge.

To my knowledge, any Macintosh with a airport card using OS X 10.5, OS X 10.6 or any Windows box with Safari has location services enabled by default.  Here is how to disable location services.  I’m curious why Apple thought that this should be a default setting in your operating system.  Thanks Apple, but no thanks.  My computer on my static IP is querying the mother ship every 12 hours to figure out where I’m sitting with my computer.  For some reason, I just don’t like that.

RetroMacCast podcast review

I ran across the RetroMacCast the other day when I was looking for podcasts focusing on older computers.  This podcast is ran by two guys, James & John who are both collectors, restorers and modders of old Macintosh computers.  They seem to be mostly interested in 68000 and early power PC architectures but certainly mention G3’s and G4’s all the time as well.  I like to listen to podcasts from the start when I find them.  The RetroMacCast started on December 17th, 2005 so they have been around a long time now.  As of today (6/27/2010) they have 165 episodes under their belts.  Their goal is to podcast once a week.

As of now, I’m only on episode 23 of this podcast so anything I mention now may change later but I like this podcast for several reasons.  Let me just list them off:

  • They keep it moving at a good pace.  Aside from interviews, no segment goes on for over a five minutes or so.
  • It is consistent.  You always know what to expect when you listen so if you like the first one, you’ll probably like them all.
  • The format is good.  They read some fan mail, talk about a particular retro mac of the week, a piece of hardware or memorabilia, an eBay find of the week and current news.
  • No sponsors so the podcast isn’t junked up with a bunch of ads.
  • Good audio quality and production.

I’m not a big Mac guy personally.  I like the MacBook Pro that I use but I’m not a fan boy, I don’t idolize every little nuance of the company and I don’t collect old Macs.  That being said, I always learn some new and interesting about old Macs and old computers in general from this podcast and never find it overwhelming to listen to.  Going back to the start, it’s fun to listen to these guys speculate about new hardware coming out such as the iPhone, iPod Touch, MacBook Air, etc.  To me, listening to these podcasts about the old Macs is better than actually owning most of the systems since it takes up less space to just listen to their podcast and look at the pictures they post.  I’m confident that if I ever DO decide to buy a retro Mac, I’ll have the proper knowledge to figure out which one to buy thanks to this podcast.

James and John do a very good job of keeping it interesting and leave the listener wanting to hear more.  One of my favorite segments of their podcast is the eBay find of the week.  They will discuss a few rare items that are listed, give recommendations on whether to bid on them or not and then the next week, they follow up and tell how much the items did or did not sell for.  I would not be as kind as they are when talking about some of these sellers such as the guy wanting $500 for a toaster Mac case back or the other guy trying to get $3500 from a third party external scsi drive.

If you are into old Macs, this is your podcast.  If you are into new Macs, this might also be your podcast since they do hit all of the major announcements and don’t tend to drag on about them too much.  If you are into computer history, this is definitely your podcast.  Sometimes they even step outside their scope and dare to talk about things like the Apple I, Apple Lisa and Newton Message Pad.  If any of this sounds interesting, check out their website or just subscribe in iTunes.

I’ve been merging my address books in preparation for my new HTC EVO 4G that I’ll be getting on June 3rd.  As it sat, I had contacts in 3 seperate places.  There was the Mac address book, Google and Outlook in my Windows XP VM which I ONLY used for Activesync to backup my phone contacts.  First I exported everything from Outlook into a CSV file.  Then I imported that file to contacts in Gmail.  That went pretty smooth since I didn’t have many contacts in Gmail already.  Then I went into Mac Address Book into preferences and turned on “Syncronize with Google”.  I considered the warning that I was about to modify over 25% of my address book and I clicked “sync”.  There were a few conflicts resolved fairly automatically and it resynced.

After all that, I noticed tons of duplicate contacts.  I went into Gmail and from there I found a button in Gmail that allowed me to automatically clean up the duplicates.  I did this and it found 65 dupes out of 450 contacts.  Not bad.  That saved me a few minutes but then I wanted to reflect the changes in the Mac Address Book.  Low and behold, there is a button up in the menu bar on the right hand side that allows you to force a sync anytime you wish.  I posted a screen shot so you can see what I mean.

Have you ever wondered what to do with that obscure long number that is sometimes seen posted with files that you download?  If you have ANY suspicion on whether a file is legitimate or not, you should use that number to make sure you are getting the file from the correct source.  Other than checking for trojan’d files and other dirty deeds you can also check to make sure you downloaded the WHOLE file.  Why waste a DVD by burning a corrupted ISO?  It’s easy enough to run the checksum so that you don’t have to guess if the file is good or not.  Open up a terminal and type:

md5 filename

See?  It’s dead simple.  Just make sure the number matches the one that is posted on the trusted site where you downloaded the file.  If you want to get really fancy with the process, there is an automator script available from apple called MD5 Checksum 1.0 that allows you to right click and check any file right in the finder.

I’ve owned a Mac now since late 2008.  Soon after I bought it, I discovered how cool multi-monitor support is.  Oddly, this discovery didn’t quench more thirst for more screen real estate, it simply made me want more and more.  On my MacBook Pro, there is only one monitor output.  I would have assumed that was that and there would be no way to add more screens but then I found the Sewell Minideck SW-22857.

This ingenious device allows you to hook up to 5 extra monitors to a computer even as underpowered as a Atom-based netbook.  That is a testament to the fact that it doesn’t consume a lot of overhead.  On my system which is a 2.53GHz dual core, it seems to only take 1.2-2.2% of one of the CPU’s at idle and it spikes to 2.6% when I’m pushing it with window scrolling, etc. Works for me.

Now personally I would have assumed that a USB-based graphics card would be kind of a gimmick.  Surprisingly enough though, I think this adapter will work well enough to be useful.  I did try full motion video on it and it sucks.  Totally useless and choppy.  I would estimate I’m getting 15-20fps on it.  To me, this is pretty much unacceptable, YMMV.

I did a lot of research before I bought this device.  One thing surprised me.  It’s smaller than it looks in the picture.  Probably half the size of a standard external 2.5″ drive but a touch thicker.  Another thing worth mentioning is that you should just go to the website to get the latest driver.  From my understanding, the bundled one doesn’t work too well.

Supposedly this is one of the only USB-VGA/DVI/HDMI adapters that actually works properly with the Mac.  I’d believe that.  The bummer is that they know it and charge dearly for it.  I tried and tried to wait them out but the price never dropped.  I could not find this device ANYWHERE legitimately cheaper than $100.

The only problem I could find with the whole setup is that my monitor does not seem to properly sleep with this adapter.  The screen goes black but the back light stays on.  If I figure out what is going on with this, I’ll post an update.

Update 6/30/2010 – Still haven’t figured out the sleep mode on the screen but I have found that you cannot take a screenshot of anything running on USB-connected screen under Mac OS X

TinyELF Emulator for Macintosh OS X

I’ve recently become serious about learning some assembly language.  I’ve always been interested in it but deemed it far too difficult of a task to take on.  It’s usually very mind boggling to look at and sometimes doesn’t make sense at a glance.  Recently I’ve come across a system to practice and learn it relatively easy.  It’s an emulator for OS X called tinyELF.  It’s based on a 1970’s hobbyist computer called the Cosmac ELF which is based on a RCA cpu called the 1802.  The unique thing about this chip is that it has a smallish intruction set of approximately 90 commands and you can enter byte code into it manually via a special loader mode.

The nice advantage of the emulator over the real computer of the 1970’s is that you can look at the memory contents, registers and a step-by-step trace of the instructions being executed.  Also, you can save programs and enter bytes manually into memory thus bypassing the loader.  Another huge advantage over the original Cosmac ELF is that this version features hexadecimal input.  The original elf featured toggle switches and required binary input.

To get started, I HIGHLY suggest reading this book that has been published online for free.  I’m into chapter 3 and so far it’s EXCELLENT.  It’s called A Short Course in Programming by Tom Pittman.  This would be better than me trying to re-explain how to enter programs although it’s much easier than it looks at first glance.

To give you a quick run down, when you start TinyELF, go to the debug menu and check off the Memory Contents, 1802 State and Trace.  These may look daunting at first but they will make sense in a minute.  Next, try out a sample program.  This program will make the R1 register count from 0000 to FFFF and keep rolling over.

0000   11     INC 1            This command increments register 1.

0001    30    BR LOOP    This command loops to the memory location specified in the next byte.

0002   00                          This is the target location for the BR LOOP command to branch off too.

I want to get you programming right away so I’ll tell you exactly what to press to input that program.  On the hex keypad press:

load, 11, I, 30, I, 00, I, Load

As you are doing that sequence, you should see the memory contents filling up.  You will need the 1802 State window open at the very least to see the output of this program.  When you have that window open, hit Run on the hex keypad. Register 2 should be counting up like nuts.  Congratulations, you just keyed in some old school assembly language.  This is very similar to what our forefathers did with punch cards but as I stated before, we have an advantage because we can very easily see the contents of the memory.

I encourage you to read that book that I linked to.  You will learn more than you can imagine about how computers work in a well-explained format.  If you don’t have a Mac, don’t worry, there are 1802 emulators out there for windows as well.  You’ll just have to do a little searching to find one.

What is MacPorts?

Since getting my MacBook pro in early 2009 MacPorts has been one of the best and most useful tools I have discovered for it. MacPorts is a package management system similar to Debian’s apt-get. It allows you to install any of the 1000’s of packages that are available on other Unix platforms.  To use it, you’ll need Xcode which is Apple’s free integrated development environment.  Make sure you include both X11SDK and Unix Development when you grab the Xcode package.  Xcode is a huge package but it’s worth the space for ports and because it comes with Dashcode which is a nice little text editor that properly saves html, php, etc unlike text edit.

Once you have Xcode downloaded and installed, then grab the pre-built dmg file for your version of OS X from here.  One of the first commands you’ll want to make a note of is the update command.  That brings MacPorts itself up to date.  To run it you type:

sudo port -v selfupdate

More important is the package update command.  This one could take a while to run depending how many packages you have installed since it will download and recompile any outdated packages and dependencies you may have installed.  Be forwarded my computer took over an hour to upgrade.  To run it you type:

sudo port upgrade outdated

At the time of this blog post there are 6818 ports currently available.  You can see all of the ports right here.  The ports are categorized and searchable.  You can also search through all of the available ports right on the command line with these two commands:

ports list

ports search package

Once you find a package you want, installing it is a snap.  You just type:

sudo port install package

After you have installed a few ports, you can see a list of all ports and all dependencies that you currently have installed by typing:

port installed

Every time I look at the list I see new packages to install.  A few of my favorites are Perl, mysql, nmap & lynx.  You might laugh at Lynx but it really can be handy in a pinch.  Especially if you are SSH’ing into your Mac remotely.  Even if your package is not available, ports is really the best way to install dependencies for other packages that you may need to compile.  Things like gmake, autoconf & automake can be critical to running ./configure scripts and ports will make dependency hell a little less painful.

One final caveat is that when you upgrade to the next version of OS X, it will probably break some/most/all of your ports.  I haven’t had this experience yet but I’m guessing it won’t be much more painful than possibly upgrading Xcode, the MacPorts binary and running the upgrade command again.

Powered by WordPress. Theme: Motion by 85ideas.