Useful Tool For Mac

Posted : admin On 12.04.2020
© Amit Singh. All Rights Reserved.Written in December 2003

Employ powerful tools and dazzling effects that keep your audience engaged. Work seamlessly between Mac and iOS devices. And work effortlessly with people who use Microsoft PowerPoint. Compress Files – Compress Files is an easy-to-use tool for compress, archive, encrypt files and omit Mac-specific invisible files. Dragoman – Dragoman batch.


Programming on Mac OS X

Mac OS X is a fertile field for all kinds of programming endeavors, especially if you have a *nix frame of reference. Life is still much better for a developer on Windows than on Mac OS X - no matter what one might think of the usability, etc. Windows 8 media creation tool download. of Windows. Apple has been trying to improve things for developers lately, which is a good sign.

This page discusses some programming facilities, frameworks and tools available on Mac OS X.

Application Environments

Since Mac OS X is derived from various sources, it has a multitude of Application Environments. We discussed these in Above the Kernel. To recapitulate:

BSD

Mac OS X uses FreeBSD as a reference code base for its BSD derivations (Panther derives from FreeBSD 5.0). It includes a BSD-based POSIX API (BSD style system call vector, uap based argument passing, etc.). An example of intercepting system calls on Mac OS X is covered in the article Re-routing System Calls. OS X also supports System V IPC, asynchronous I/O, poll() (emulated over select()), etc. Arbitrary C programming is not any different than on any generic Unix platform. Here is an example of re-routing function calls by overwriting and injecting machine instructions.

Carbon

This is a set of procedural C-based APIs for Mac OS X that are based on the old Mac OS 9 API (actually dating back as far back as Mac OS 8.1). Carbon was originally designed to provide an easy development migration path from Mac OS 9 to Mac OS X. The Carbon APIs are all-encompassing (they include legacy interfaces), covering most things that you are likely to do programmatically on Mac OS X. Carbon specific code is not portable to other platforms.

Classic

Mac OS X includes a Classic (Mac OS 9) emulator that executes in a protected memory environment so as to let users run programs written for Mac OS 9. Apple does not encourage you to actually develop for this environment.

Cocoa

Useful Tool For Who In Darkness Dwell

This is an object-oriented Objective-C based API that's the preferred way of doing things in Mac OS X (if what you want to do can be done through Cocoa), particularly because of how well it's supported by Apple's Rapid Development tools. However, there are many parts of Mac OS X, and applications from 3rd party vendors, that have not converted to Cocoa completely, or at all. A Cocoa application can call the Carbon API when necessary. Cocoa is largely based on the OpenStep frameworks, and consists of primarily two parts: the Foundation (fundamental classes) and the Application Kit (classes for GUI elements).

Although Cocoa is not really portable across platforms, you might be able to get your Cocoa programs to work on a number of platforms if you take GNUstep into account. Here's what the GNUstep FAQ has to say about portability between Cocoa and GNUstep (quoted verbatim):

It's easier from GNUstep to Cocoa than Cocoa to GNUstep. Cocoa is constantly changing, much faster than GNUstep could hope to keep up. They have added extensions and new classes that aren't available in GNUstep yet. Plus there are some other issues. If you start with Cocoa:

  • Be careful with Cocoa.h includes (Use #ifndef GNUSTEP, for instance)
  • Do not use CoreFoundation
  • Do not use Objective-C++
  • Do not use Quicktime or other proprietary extension
  • You need to convert .nib files (see section 1.1.3 Tools for porting)
  • Some unfinished classes include NSToolBar and Drawers.

Useful Tool For Math

My definition of 'portability' (in the current context) is not about feasibility, but the practicality of doing so. Given enough resources, one could port anything to anything - often by emulating/implementing the 'source' API on the 'target'. The WINE project is a wonderful effort. Microsoft once used help from Mainsoft to get Internet Explorer and Outlook Express to run on Solaris. Still, Win32 code is not portable from a practical viewpoint.

Java

Mac OS X includes a complete J2SE implementation. The Swing implementation generates native OS X GUI elements for a uniform look and feel. JAR files are treated as shared libraries. Note that Cocoa includes Java packages that let you create a Cocoa application using Java as the programming language.

X11

Mac OS X includes (optionally) an X Window System implementation based on XFree86 4.3+. The X server has been optimized for OS X via integration with Quartz and supports OpenGL, rootless and full screen modes, an Aqua-compatible window manager (quartz-wm) and a menu in the Dock. The presence of a good quality X server and the X11 SDK is a big win because it makes possible to port (in most cases with no or minor changes) a large number of existing X11 applications to Mac OS X, including use of toolkits such as GTK, KDE, various others.

As mentioned in Architecture of Mac OS X, Mac OS X has a number of very different APIs due to the many environments constituting it. The example of BSD and Carbon Process Manager processes was given before. Similarly, what thread API you use on Mac OS X is determined by what environment you are programming in. Mach provides low-level kernel threads. The pthread library, /usr/lib/libpthread.dylib (actually a symlink to libSystem.dylib) provides POSIX threads. Carbon includes a threads package for cooperatively scheduled threads (Thread Manager) and another for preemptively scheduled threads (Multiprocessing Services). Cocoa uses the NSThread class, while Java uses java.lang.Thread. All these are built using pthreads.

Bundles and Frameworks

Mac OS X uses a few concepts not found on many traditional BSD, Linux, Solaris etc. systems.

Bundle

A Bundle is a directory that stores executable code and the software resources (icons, splash images, sounds, localized character strings, interface builder 'nib' files, .rsrc resource files, etc.) related to that code. Although a bundle is a directory containing potentially numerous subdirectories and files, it is treated as a single entity for various purposes.

Mac OS X can have different kinds of bundles:

  • An 'Application' bundle (such as Foo.app) contains everything (except frameworks/libraries coming from elsewhere) needed to run the Foo application. It is possible to simply drag Foo.app to any location and it will work as expected (you do not even have to do anything to its Dock icon, if any - courtesy the fact that 'aliases' on HFS+ do not break if you move a file without replacing it). The /Applications directory contains many such bundles.
  • A 'Framework' (such as Bar.framework) is a versioned bundle containing resources such as headers, documentation, etc. The /System/Library/Frameworks directory contains numerous frameworks (such as for Kerberos, Python, QuickTime, ScreenSaver, and so on).
  • A 'Loadable' bundle can be a kernel extension (a .kext, similar to a loadable kernel module on Linux, say), many of which exist in /System/Library/Extensions, a Plug-in or a Palette.

One of the Finder flags is kHasBundle, which, if set, makes the bundle appear as a file package (a single opaque entity), with exceptions and specific behavior for different bundle types.

The various bundle extensions referred to above are only conventions - a bundle can have any extension. For example, instead of a .app, you can have a .debug or .profile to imply debug or profile code, respectively.

Framework

A Framework, as stated above, is a type of a bundle that contains shared resources such as dynamic shared libraries, header files, icons and images, documentation, etc. Moreover, frameworks are versioned. Major versions are incompatible while minor versions are compatible. One framework can have multiple major versions.

Consider an example:

# ls -lF /System/Library/Frameworks/OpenGL.frameworktotal 32lrwxr-xr-x .. Headers@ -> Versions/Current/Headerslrwxr-xr-x .. Libraries@ -> Versions/Current/Librarieslrwxr-xr-x .. OpenGL@ -> Versions/Current/OpenGLlrwxr-xr-x .. Resources@ -> Versions/Current/Resourcesdrwxr-xr-x .. Versions/

Except Versions/, everything else is a symbolic link (to entities from the current major version). The file OpenGL is the dynamic shared library:

# file -L OpenGLOpenGL: Mach-O dynamically linked shared library ppc

The default path for searching frameworks (as used by the dynamic link editor) is:

$(HOME)/Library/Frameworks/Library/Frameworks/Network/Library/Frameworks/System/Library/Frameworks

As we have seen, Mac OS X has complex entities (like a .app directory tree) exposed as a single, click-able entity through the Finder. The same effect as double-clicking on an entity's icon can be achieved on the command line through the open utility. It opens a file, folder, or a URL, in an appropriate manner. For example, opening a .app folder would launch that application, opening a URL would launch an instance of the default web browser with that URL, opening an MP3 file would open it in the default MP3 player, etc.

Runtime Environments

Mac OS X has two primary runtime environments: one based on the dynamic link editor, dyld, and the other based on Code Fragment Manager (CFM). OS X does not support ELF, and there's no dlopen, although the dlcompat library provides a limited compatibility layer (using native OS X functions) so that common Unix source can be compiled easily.

CFM determines addresses for referenced symbols in executables at build time (a static approach). The executable format used is called PEF (Preferred Executable Format). dyld resolves undefined symbols at execution time. The executable format is Mach-O (Mach object-file-format).

Mac OS X is natively a dyld/Mach-O platform - all system frameworks are built using dyld. In fact, the CFM/PEF environment is itself built on top of dyld/Mach-O. However, there exist provisions to call dyld code from CFM code. Moreover, if you wish to debug or trace a CFM application using GDB, you would need to use a Mach-O program called LaunchCFMApp:

/System/Library/Frameworks/Carbon.framework/Versions/A/Support/LaunchCFMApp

dyld/Mach-O is similar in many respects to ld.so/ELF, although they differ both conventionally and fundamentally. Some of these are:

  • Dynamic shared libraries on Mac OS X have the .dylib extension. The functionality of several traditional libraries (such as libc, libdl, libinfo, libkvm, libm, libpthread, librpcsvc, etc.) is provided by a single dynamically loadable framework, libSystem. libc.dylib etc. are simply symbolic links to libSystem.dylib.
  • Mac OS X builds libraries and applications with a two-level namespace (as compared to a flat namespace in traditional Unix systems). This topic is described in an Apple Developer Note called Two-Level Namespace Executables. This also means that DYLD_INSERT_LIBRARIES, the dyld analog of ld.so's LD_PRELOAD will not work with two-level namespace libraries. You can force a flat namespace, but that often messes up things enough to stop the application from running at all. Additionally, you cannot have 'weak' symbols (symbols that can be overridden) in libraries.
  • Functionality similar to ldd (on Linux, say) is provided by /usr/bin/otool.

Mac OS X uses Mach-O and not ELF simply because NEXTSTEP used Mach-O. Apple had a large enough TODO list that moving to ELF for the sake of mainstream conformity was not justified. Like NEXTSTEP, Mac OS X supports 'fat' binaries where an executable image contains binaries for more than one platform (such as PowerPC and x86). Apple's port of GNU CC allow for fat binaries to be produced (provided assemblers and libraries are available for each specified architecture).

Prebinding

Mac OS X uses a concept called 'prebinding' to optimize Mach-O applications to launch faster. Prebinding is the reason you see the 'Optimizing ..' message when you update the system, or install certain software.

The dynamic link editor resolves undefined symbols in an executable (and dynamic libraries) at run time. This activity involves mapping the dynamic code to free address ranges and computing the resultant symbol addresses. If a dynamic library is compiled with prebinding support, it can be predefined at a given address range. This way, dyld can use predefined addresses to reference symbols in such a library. Of course, for this to work, libraries cannot have preferred addresses that overlap. Apple specifies address ranges for 3rd party (including your own) libraries to use to support prebinding.

update_prebinding is run to (attempt to) synchronize prebinding information when new files are added to a system. This can be a time consuming process even if you add or change a single file, say, because all libraries and executables that might dynamically load the new file must be found (package information is used to help in this, and the process is further optimized by building a dependency graph), and eventually redo_prebinding is run to prebind files appropriately.

/usr/bin/otool can be used to determine if a binary is prebound:

# otool -hv /usr/lib/libc.dylib/usr/lib/libc.dylib:Mach headermagic cputype cpusubtype filetype ncmds sizeofcmds flagsMH_MAGIC PPC ALL DYLIB 10 1940 NOUNDEFS DYLDLINK PREBOUND SPLIT_SEGS TWOLEVEL

Xcode

Xcode is Mac OS X 'Panther's developer tools package. It includes components typical of a comprehensive IDE:

  • A source code editor with code completion
  • A file browser/organizer
  • Support for version control (CVS and Perforce)
  • A documentation viewer that can link symbols in the code to documentation
  • A class browser
  • Various compilers (the GNU suite, including gcc 3.3 and integration with distcc for distributed builds, javac, jikes)
  • GDB based graphical and command-line debugging
  • An Interface Builder application that provides a GUI for laying out interface objects (various GUI elements), customize them (resize, set and modify attributes), connect different objects together, and so on
  • Support for packaging

A new Xcode project can be instantiated from a large number of templates. As can be seen, it supports development of various kinds of programs in C, C++, Objective-C, Objective-C++, Java and Assembly. For example, it is almost trivial to create things such as Screen Savers, Preference Panes (the kind you see under System Preferences), etc.

Xcode has some neat and useful features: Predictive compilation runs the compiler in the background as you edit the source. Once you are ready to build, the hope is that most of the building would have been done already. 'Zero Link' links at runtime instead of compile time, whereby only code needed to run the application is linked in and loaded. A related feature is 'Fix and Continue', courtesy which you can make a change to your code and have the code compiled and inserted into a running program. Distributed builds are also supported via integration with distcc.

Itool For Mac

Programming Languages

Compilers and Libraries

Apple provides a customized/optimized GNU CC, with backends for C, C++, Objective-C and Objective-C++. For Java, two compilers are included: javac and IBM's jikes. Compilers for many other languages are available either precompiled (such as the XL Fortran Advanced Compiler from IBM), or can be compiled from source, which is not any harder in general than compiling the same source on, say, Linux or FreeBSD. The same goes for development libraries - it should be easy to compile many open source platform-independent / multi-platform libraries from source on OS X. Many important libraries and APIs are either included with Mac OS X, or are readily available (Gtk/Gtk++, Java, OpenGL, Qt, QuickTime, Tcl/Tk, X11R6). The system comes with several special purpose (and/or optimized) libraries as well, such as for Numerical Computing and Image processing (BLAS, vBigNum, vDSP, vImage, LAPACK, vMathLib, etc.)

Interpreters

A number of scripting languages are included in Mac OS X, such as AppleScript (including the AppleScript Studio IDE), Perl (Mac OS X 'Panther' has perl 5.8.1), PHP, Python (Panther has python 2.3, with bindings to CoreGraphics), Tcl, and Ruby. Mac OS X also supports the Open Scripting Architecture (OSA), using which it is possible to get JavaScript (a port of Mozilla JavaScript) in the form of an OSA component. You can get support for more languages (Lisp, Scheme, ..) via Fink, and it should be straightforward to compile most of them from source, if desired. bash, tcsh, and zsh are the *nix shells included.

Scriptability

AppleScript is the preferred scripting system on Mac OS X, providing direct control of many parts of the system as well as applications. In other words, AppleScript lets you write scripts to automate operations, exchange data with and send commands to applications, etc.

While I personally find AppleScript syntax to be exasperating (I never really enjoyed COBOL for that matter), it is useful. Consider a contrived example for a taste of AppleScript:

tell application 'Finder' set system_version to (get the version) as number do shell script 'say 'This is Mac OSX' & system_version return system_versionend tell

Running the above (either in ScriptEditor or through the osascript command line utility) should cause the say utility (see below) to speak the version of Mac OS X (well, assuming you are running Mac OS X) to you. By the way, you do not need to run a shell command and use the say utility: AppleScript has a say command of its own.

Now, whether you are impressed by (or happy with) Mac OS X's scriptability depends on which system you are contrasting with. As mentioned at the beginning of this section, if you are coming from a traditional Unix/Unix'ish world (FreeBSD, Linux, Solaris, *nix, ..), you should find it impressive, a lot perhaps (barring the miniscule possibility that you are an anti-Mac/pro-XYZ zealot). However, you might not think much of this if you have been using Microsoft's COM/DCOM/.NET.

Along the lines of making a *nix developer/user happy though, Apple has been exposing various aspects of Mac OS X functionality to be driven via a traditional command line. Consider some examples:

drutil is a command line tool that interacts with the DiscRecording framework. The command:

# drutil getconfig supported

10 Free Wireframing and Mockup Tools. Progress on FluidIA has been a little bit slow recently, but the actual app works perfectly for designing a wireframe mockup. Unix, and Mac OS X. DENIM describes itself as “an Informal Tool For Early Stage Web Site and UI Design”. Windows, Mac and Web Skins Switch to any look you need. With single click you can switch the look & feel of your mockups among: Windows XP, Win7, Win8, OsX and several distinct skins for. Wireframe mockup tool for mac. # mobile design # mockup tool # prototyping tool; What are the best free mockup tools for mac ux/ui designers? Top 4 free mockup tools for mac will be shared here for you to create free and beautiful mockups. Like other wireframe tools for Mac, FlairBuilder can create a wireframe by dragging and clicking. If you are still entangled fidelity problem, FlairBuilder is a good choice. It can upgrade from the low-fidelity sketches to the high-fidelity wireframes.

will probably tell you more than you want to know about your CD/DVD burner.

hdiutil is a powerful utility for manipulating disk images.

say is a command line utility to convert input text to speech using the Speech Synthesis manager.

sips is a command line interface to the Scriptable Image Processing Server. The graphical abilities of Mac OS X are exposed through this image processing service. The SIPS architecture contains tools for performing basic image alterations and support various image formats. The goal is to provide quick, convenient, desktop automation of common image processing operations.

Tools

The Developer Framework contains a wealth of tools for various programming, debugging, profiling and other developmental tasks. The CHUD (Computer Hardware Understanding Development) Tools are particularly useful for various kinds of benchmarking and optimization. Mac OS X Developer Tools Overview contains detailed information on almost all tools included in Xcode. Mac OS X Hacking Tools is a compendium of some useful programs on Mac OS X (mostly outside of Xcode).

Lastly, the OS X Terminal.app, is one of the better terminal applications around, which does matter to me while programming, since I do not use an IDE for everything. The terminal advertises itself as xterm-color, has Unicode support (though broken), drag-and-drop support (dragging an icon to the terminal would drop its pathname or URL string), transparency support (has a minor problem in Panther - there's ghosting of text under certain conditions), etc.

<<<Mac OS X FilesystemsmainA Sampling of Mac OS X Features>>>

Portable apps, as opposed to traditional software, don’t require installation onto a computer. Their entire data set sits nicely in one folder, and terminate completely once closed. Whether you prefer using them for a clean machine or like to carry around a flash drive with loads of programs, portable apps are pretty awesomeHow Portable Apps Can Make Your Life Easier & Save ResourcesHow Portable Apps Can Make Your Life Easier & Save ResourcesIf you frequently switch computers and have cloud storage space or USB drives to spare, here's an idea: outsource your applications.Read More.

We’ve collected the best portable appsThe Best Portable Apps That Require No InstallationThe Best Portable Apps That Require No InstallationPortable apps don't need installation. You can run them from even a flash drive. Here are the best portable apps around.Read More, but there are so many more out there. Grab your spare flash driveAre USB Flash Drives Still Worth It In 2015?Are USB Flash Drives Still Worth It In 2015?USB flash drives are great for storage, but they have so many other uses. Here's how they're worth their weight in gold.Read More or empty cloud storageTop 10 Creative Uses For Dropbox Or Other Cloud StorageTop 10 Creative Uses For Dropbox Or Other Cloud StorageThe agility, flexibility, and low-cost scale ups turn cloud storage options into more than an online vault to back up your documents and files. But cloud storage is more than these important but mundane uses..Read More and fill it up with this mega-list of 100 portable apps. You’ll find tools to satisfy every software need, categorized by type.

Check out PortableApps.com’s Platform to make the installation easy.

Accessibility (3)

  • Balabolka — Text-to-speech program for reading on-screen text aloud.
  • On-Screen Keyboard — Lets you enter text without a keyboard; perfect if your computer’s keyboard isn’t workingLearn To Navigate Windows Without A Mouse, Keyboard Or ScreenLearn To Navigate Windows Without A Mouse, Keyboard Or ScreenYou just spent hours labouring over an important document when your keyboard dies on you. Would you know how to save your work, exit programs, and shut down your computer? We'll show you.Read More.
  • Virtual Magnifying Glass — Screen magnifier to give your eyes a breakAre You Nearsighted or Farsighted? Tips to Make Windows More Accessible for Young & OldAre You Nearsighted or Farsighted? Tips to Make Windows More Accessible for Young & OldComputers use print that's too small, your eyesight changes, you get headaches, and the computer gets called a lot of dirty names. Consult this guide to Windows Accessibility tools for some stress relief!Read More.

Audio and Video (9)

  • AIMP — Portable music player and library manager.
  • Audacity — The best free audio editing and recording program.
  • Avidemux — A basic video editor for light tasks.
  • CDEx — Extracts audio from CDs.
  • cdrtfe — All-in-one CD and DVD burner.
  • DamnVid — Video converter and downloader, with many websites supported.
  • gPodder — Podcast manager that lets you download your favorite shows.
  • MusicBrainz Picard — Music tagger that lets you edit metadata for music4 Fantastic Tools to Manage Your Massive MP3 Collection4 Fantastic Tools to Manage Your Massive MP3 CollectionMusic library management can be an entirely frustrating experience, especially if you have years of unorganized music waiting to be sorted and labeled properly. Poor music library management will come back and bite you later..Read More.
  • VLC Media Player — The best media player5 Best Free Media Players for Windows5 Best Free Media Players for WindowsThe best media player for you is the one you most enjoy using. Here are the best free media player apps to consider on Windows.Read More that can handle any audio or video format imaginable.

Development (5)

  • Database Browser — Lets you connect to and manage any database, anytime.
  • Frhed — Small hex editor.
  • Notepad++ — An awesome alternative to Notepad with highlighting, tabs, and more.
  • Pencil Project — Prototyping tool to mock up Android, iOS, web, and more apps.
  • XAMPP — Complete portable server with Apache, MySQL, and phpMyAdmin in one package.

Education (8)

  • Artha — A full thesaurus, no internet connection needed.
  • Celestia — Lets you virtually travel into space to check out planets and stars.
  • GoldenDict — Dictionary and encyclopedia tool that lets you research words from multiple sources.
  • Gramps — Genealogy softwareUnmissable and Free Family Tree Software for LinuxUnmissable and Free Family Tree Software for LinuxYou've heard about family tree software, such as Family Tree Maker, and plenty of alternatives are on Linux! If you're looking for a genealogy program for Linux, start with these suggestions.Read More that assists with researching and mapping your family tree.
  • Marble — Offers a virtual globe for learning about Earth.
  • Mnemosyne — Flash card software for memorizing anything.
  • Solfege — Helps musicians practice chords, scales, and more.
  • TIPP10 — Teaches you to touch type.

Games (14)

  • 2048 — The addicting number game where you must combine numbered titles to build up to 2048.
  • A Dark Room — An adventure game that takes place entirely through text3 Tools to Create Your Own Text Adventure Games3 Tools to Create Your Own Text Adventure GamesWant to try making your own text adventure game? Here's your chance! These three tools will help you create your own complex and playable story.Read More.
  • Atomic Tanks — Blow up enemy tanks using a selection of crazy weapons.
  • Big Solitaires 3D — Collection of 40 solitaire games; perfect if you’ve mastered Windows SolitaireCelebrating 25 Years of Microsoft Solitaire: The History, Rules & a TournamentCelebrating 25 Years of Microsoft Solitaire: The History, Rules & a TournamentSolitaire - the preserve of procrastinating office workers and bored housewives - is celebrating its 25th anniversary, and Microsoft is commemorating it with a group tournament. We re-visit the history and rules of the game.Read More!
  • Canabalt — The father of endless runner games.
  • Freeciv — Strategy game in which you build your empire in the stone age and advance it to the space age.
  • LBreakout2 — The classic game of Breakout. Use your paddle to bounce a ball into a wall of blocks.
  • Lucas Chess — A chess game that teaches you to play10 Creative Ways to Supercharge Your Chess Training10 Creative Ways to Supercharge Your Chess TrainingGetting better at chess is normally about deliberate practice over many disheartening games, so let's look at few of the ways you can bring fun and creativity into your chess training.Read More through increasingly difficult opponents and training exercises.
  • Mines-Perfect— The classic game of Minesweeper with extra board shapes added.
  • Monster RPG 2 — A nostalgic role-playing game in the style of Super Nintendo classics.
  • PokerTH — Grab your sunglasses and play Texas hold ’em poker against computer players or others online.
  • Scorched 3D — Control your artillery and battle your enemies in 3D.
  • Sudoku — The popular numbers puzzle game with several difficulties and automatic game saves.
  • The Legend of Edgar — A retro-styled 2D platformer.

Graphics (9)

  • AniFX — Full-featured mouse cursor editor.
  • Caesium — Lets you compress and optimize images10 Free Online Batch Image Tools to Resize, Convert & Optimize10 Free Online Batch Image Tools to Resize, Convert & OptimizeYou need batch editing tools when you have lots of photos to process and very little time. We introduce you to the best batch resizers, optimizers, or converters available online.Read More.
  • GIMP — One of the most powerful alternatives to Photoshop15 Free Alternatives to Adobe Lightroom, Illustrator, and Photoshop15 Free Alternatives to Adobe Lightroom, Illustrator, and PhotoshopWould you like to get Adobe Photoshop, Lightroom, or Illustrator for free? Here are some of the best Creative Cloud alternatives.Read More for advanced image editing.
  • IcoFX — Icon editor for making cool custom images for folders or files.
  • Inkscape — Vector image editor that provides a free alternative to Adobe Illustrator.
  • IrfanView — Popular image viewer that offers so much more than the Windows default.
  • Lightscreen — Basic screenshot tool that provides more than the Snipping Tool.
  • PicPick — One of our favorite screenshot toolsThe Best Tools to Grab Screenshots in WindowsThe Best Tools to Grab Screenshots in WindowsAre you often taking screenshots? Upgrade your tool to one that meets your needs. We put several free tools to the test and present the best ones for ease of use, editing, and sharing screenshots.Read More that includes an image editor, color picker, and more.
  • RawTherapee — Advanced editor for working with RAW imagesRAW Files: Why You Should Be Using Them for Your PhotosRAW Files: Why You Should Be Using Them for Your PhotosAlmost every article featuring advice for people just learning photography stresses one thing: shoot RAW images. Here's why that's good advice.Read More.

Instant Messaging (5)

  • Ekiga — Open-source alternative to Skype6 Open Source Messaging Apps More Secure Than Skype6 Open Source Messaging Apps More Secure Than SkypeSkype has never been the most safe or secure communication protocol, and after Microsoft took over in 2011, concerns over privacy began to pile up. Can these secure, open source alternatives allay those fears?Read More that includes a softphone.
  • Mumble — Voice chat software intended for use while gaming.
  • Pidgin — A longtime favorite chat clientThe 7 Best Chat Apps and Clients for Windows, Mac, and LinuxThe 7 Best Chat Apps and Clients for Windows, Mac, and LinuxFrom all-in-one messengers to dedicated chat clients, here are some of the best chat apps to use on Windows, Mac, or Linux.Read More for accessing your AOL, Yahoo, and other accounts all in one place.
  • Skype — Everyone is on Skype, so this provides easy video calling and instant messaging to your friends and family.
  • Telegram — One of the best messaging apps aroundTelegram Provides a Secure and Fast-Growing Alternative to WhatsAppTelegram Provides a Secure and Fast-Growing Alternative to WhatsAppRead More; it’s secure, speedy, and simple.

Office / Productivity (10)

  • CuteMarkEd — A Markdown editor, perfect for writing web-ready contentWhat Is Markdown? 4 Reasons Why You Should Learn It NowWhat Is Markdown? 4 Reasons Why You Should Learn It NowTired of HTML and WYSIWYG editors? Then Markdown is the answer for you no matter who you are.Read More.
  • Finance Explorer — A free budgeting software you can take on the go.
  • FocusWriter — Lets you write in peace without distractionsHow to Get a Distraction-Free Computer in 10 Easy StepsHow to Get a Distraction-Free Computer in 10 Easy StepsYour attention is consumed by distractions. Remove them to increase your focus and productivity. We show you the most common computer-related time suckers and how to disable or block them.Read More.
  • Foxit Reader — Powerful PDF reader and a great alternative to the bloated Adobe ReaderThis Is Why You Don't Need Adobe ReaderThis Is Why You Don't Need Adobe ReaderAdobe Reader is bloated, slow, and a liability. In short, it's unnecessary. Do you need a PDF Reader at all? We show you how to open PDF files without Adobe Reader.Read More.
  • LibreOffice — A full-featured Office suite that rivals Microsoft OfficeIs LibreOffice Worthy of the Office Crown?Is LibreOffice Worthy of the Office Crown?LibreOffice is the king of free office suites. It's unlikely to replace Microsoft Office in a business environment, but it's an excellent alternative for casual users. Here's what's new in LibreOffice 5.1.Read More.
  • Mozilla Thunderbird — Manage your email and contacts with this desktop client. It’s a great alternative to webmailYou Should Ditch Webmail for a Desktop Email Client If..You Should Ditch Webmail for a Desktop Email Client If..A few years ago, webmail was all the rave. Wonder whether it's time to switch back to a desktop email client? Look no further. We show you the merits of a local mail service.Read More on foreign machines.
  • RedNotebook — A journal featuring live search, backup options, and calendar navigation.
  • SpeedCrunch — Powerful calculator for any number-crunching needs.
  • Stickies — Lets you add as many sticky notes as you want to your desktop.
  • ZoomIt — Allows you to zoom in and annotate your screen with a hotkey. Useful for presentations.

Security (7)

  • ClamWin — A free antivirusThe 10 Best Free Antivirus SoftwareThe 10 Best Free Antivirus SoftwareNo matter what computer you're using, you need antivirus protection. Here are the best free antivirus tools you can use.Read More for scanning files on any machine. The portable version doesn’t support automatic scanning, so this is for manual scans only.
  • Eraser — Securely erase your dataHow to Securely Delete Files From Your HDD or SSD in WindowsHow to Securely Delete Files From Your HDD or SSD in WindowsDid you know files never actually get deleted? That's why they can be recovered; by you or someone else. If this makes you feel uncomfortable, learn how to securely delete files.Read More so nobody can recover it.
  • KeePass — If you don’t want to use a web-based password manager like LastPass5 Best LastPass Alternatives to Manage Your Passwords5 Best LastPass Alternatives to Manage Your PasswordsMany people consider LastPass to be the king of password managers; it's packed with features and boasts more users than any of its competitors -- but it's far from being the only option!Read More, this open-source local manager is a great choice.
  • PeerBlock — Firewall that lets you block traffic7 Top Firewall Programs to Consider for Your Computer's Security7 Top Firewall Programs to Consider for Your Computer's SecurityFirewalls are crucial for modern computer security. Here are your best options and which one is right for you.Read More by IP address.
  • Spybot – Search & Destroy — An anti-malware tool that complements a standard antivirus program.
  • TDSSKiller — Removes rootkits.
  • VeraCrypt — A successor to the dead TrueCrypt that allows you to encrypt any diskTrueCrypt Is Dead: 4 Disk Encryption Alternatives For WindowsTrueCrypt Is Dead: 4 Disk Encryption Alternatives For WindowsTrueCrypt is no more, but fortunately there are other useful encryption programs. While they may not be exact replacements, they should suit your needs.Read More.

Utilities / Miscellaneous (25)

  • Ant Renamer — Powerful tool for renaming filesHow to Batch Rename & Mass Delete Files in WindowsHow to Batch Rename & Mass Delete Files in WindowsAre you pulling your hair out over how to batch rename or delete hundreds or thousands of files? Chances are, someone else is already bald and figured it out. We show you all the tricks.Read More when the File Explorer isn’t enough.
  • AquaSnap — Boosts your desktop productivity by adding more window options.
  • CamStudio — Easy-to-use screen recorder.
  • CubicExplorer — Full-featured alternative to Windows Explorer.
  • Dicom — Auto-completes your words for more efficient typing.
  • Ditto — Clipboard manager to keep everything you copy6 Free Clipboard History Managers to Track What You Copy & Paste6 Free Clipboard History Managers to Track What You Copy & PasteYou need a clipboard manager because it can remember all the things you copy and paste. We have compiled five of the most functional tools to manage your clipboard history .Read More.
  • DOSBox — Emulate MS-DOS anywhere.
  • DSynchronize — Lets you synchronize multiple folders.
  • Duplicate Files Finder — Helps you clean your hard drive by removing doubled files.
  • FileZilla — The gold standard for everything FTP.
  • JkDefrag — Disk defragmentation tool; you don’t need this for solid-state drives!
  • KiTTY — Telnet and SSH client for remotely accessing to other systems. Forked fromOpen Source Software and Forking: The Good, The Great and The UglyOpen Source Software and Forking: The Good, The Great and The UglySometimes, the end-user benefits greatly from forks. Sometimes, the fork is done under a shroud of anger, hatred and animosity. Let's look at some examples.Read More popular but clunky PuTTY.
  • PeaZip — One of the best file archiving toolsThe Top 3 File Compression & Extraction SoftwaresThe Top 3 File Compression & Extraction SoftwaresNeed to compress a large file? There's no shortage of file compression and archiving apps for Windows. But which file zipper is best for you? Here are our three top picks.Read More that lets you work with any kind of compressed fileHow to Extract Files From ZIP, RAR, 7z and Other Common ArchivesHow to Extract Files From ZIP, RAR, 7z and Other Common ArchivesWere you ever faced with a .rar file and wondered how to open it? Fortunately, managing ZIP files and other compressed archives is simple with the right tools. Here is what you need to know.Read More.
  • Process Explorer — Gives far more information about running processes than the Task Manager.
  • qBittorrent — uTorrent is an ad-infested piece of crapThe uTorrent Mining Scandal: Charity or Cash Grab?The uTorrent Mining Scandal: Charity or Cash Grab?Is µTorrent distributing Litecoin mining malware?Read More, so use this clean alternative for your torrenting needs.
  • QuiteRSS — An RSS reader for making sure you never miss a new storyWhat Is RSS and How Can It Improve Your Life?What Is RSS and How Can It Improve Your Life?Read More.
  • Revo Uninstaller — Uninstalls software and removes all leftover information from them.
  • Rufus — Lets you create bootable USB drives.
  • SnapTimer — Basic countdown timer.
  • TeamViewer — The premiere remote desktop connection toolTeamViewer 12: The Best Remote Desktop ToolTeamViewer 12: The Best Remote Desktop ToolTeamViewer is the gold standard in remote desktop tools. It's cross-platform and free for personal use. The latest version includes new features for remote assistance. Here's how to get started with TeamViewer 12.Read More; perfect for using your home PC in the field or connecting to friends.
  • TreeSize Free — Disk analyzerNeed A Disk Cleanup? Visualize What Takes Up Space On Your Windows PCNeed A Disk Cleanup? Visualize What Takes Up Space On Your Windows PCOh the pressure when you run out of disk space. What to delete? The fastest way to locate junk files is to use a tool that helps you visualize your system's file structure.Read More that scans your hard drives and shows you what’s taking up the most space.
  • TyperTask — Basic text expansion utility for saving time on repetitive entriesWhat Is Text Expansion & How Can It Help You Save Time?What Is Text Expansion & How Can It Help You Save Time?If you could save yourself even a small fraction of the time you spend typing, you could save hours of your time every week. That's exactly what text expansion is for.Read More.
  • WhatChanged — Scans for changed Registry information and files and shows you what’s different between the two snapshots.
  • Windows Error Lookup Tool — Takes vague Windows error messages and gives you a plain English description of the problem.
  • World Clock — Makes working with multiple time zones a snap.

Web Browsers (5)

  • Google Chrome — The world’s most popular and speedy browser.
  • Lynx — A text-only browser useful for seeing how your website looks to screen readers or just messing around.
  • Maxthon Cloud — Another speedy, neat browser with an alternative feature set.
  • Mozilla Firefox — If you’re sick of ChromeSick Of Chrome? This Is The Quickest Way To Completely Migrate To FirefoxSick Of Chrome? This Is The Quickest Way To Completely Migrate To FirefoxIf you're ready to leave Chrome and move on to Firefox, you can migrate your data quickly with import mechanisms baked into Firefox and third-party apps. Here's how!Read More, Firefox is a great choice that’s also heavily customizable.
  • Opera — Another great browser that doesn’t get the recognition it deservesOpera Has Good Features, so What’s the Problem?Opera Has Good Features, so What’s the Problem?There is something holding you back from clicking that 'Make Opera My Default Browser' button. What is it?Read More.

Useful Tool For Marketers Virus

Portable Apps for All!

No matter your reason for using portable apps, you’re bound to find something useful here5 Websites for Every Portable Application on the Web5 Websites for Every Portable Application on the WebYou already know that some applications offer portable or 'soft' installations, but don't you wish there was some place on the Internet where you could find any portable application?Read More! Load up some of your favorite tools for an always-ready USB stick, or try using a few of these on your computer if their functions sound useful to you. And don’t forget, you could even load up a portable version of Windows onto a USB stick.

Used Mac Tools For Sale

Don’t forget that using the PortableApps.com Platform makes managing these tools on your flash drive much easier.

Useful Tool For Marketers

Even in a list of 100, chances are we missed your favorite portable apps. Please share the ones that you can’t live without in the comments!

Image Credit: Photobirdua via Shutterstock.com

Explore more about: Flash Memory, Portable App, USB Drive.

  1. And where ist the MacOS stuff?

  2. My virus scanner blew up when I tried to download this, 'web reputation policy violation'

  3. FreeCommender XE is best freeware file manager, which also comes as portable app.

  4. Hi,

    You might be interested to know that most (if not all) of these apps are also bundled in the LiberKey suite of portable apps. The Ultimate Suite has 294 apps and fits on a 4Gb USB key. It is updated regularly so there are no security worries about using outdated apps.

    Regards,
    Leo

  5. Undeniably believe that which you said. Your favorite justification seemed to be on the internet the easiest thing to be aware of. I say to you, I certainly get irked while people consider worries that they plainly do not know about. You managed to hit the nail upon the top and defined out the whole thing without having side effect , people can take a signal. Will probably be back to get more. Thanks

    wretye5ryabcd.com

  6. One quick question: can you save 'customization' settings or is everything lost once you close a potable app?

    • Changes to the preferences in the apps are saved.

    • Changes made to the app preferences are saved.