One thing I’ve needed to do a couple of times recently is give an idea of how many similar compounds are available to the set of compounds I’m currently viewing. For example in designing a fragment library it is very useful to know for a particular fragment how many similar fragments are commercially available. Or when looking at the results of a high-throughput screen how many similar analogues to a particular hit were also screened.
To do this we need a way of doing a rapid similarity search of the reference database. I use OpenBabel in particular using the fast search capability with molecular fingerprints.
In Scripting Vortex 13 there is a new script to do this.
There are many more scripts and hints here.
My preferred text editor has been updated, this release consists entirely of fixes for reported issues, and contains no new features, nor changes to existing features,
As ever the release notes contain a few things to make you smile.
The display glyph for invisible spaces (when "Show Invisible" and "Show Spaces" are both turned on) is now U+00B7 (MIDDLE DOT). If spaces don't display when those settings are turned on, then your display font is missing that glyph, and you should report it to your font's developer as a bug. (I would have used U+1427 (CANADIAN SYLLABICS FINAL MIDDLE DOT) for the humour value alone, but not enough fonts supported that glyph. Sorry.) …
Fixed case in which PHP line comments inside of single-line directives (e.g. ?php ... // hello world foo bar ?, you can't make this stuff up...) would cause the PI closer to be missed and subsequently mess up color scanning.
AppleScriptObjC Explorer is a script editor that takes advantage of AppleScript’s ability to call Cocoa methods in OS X 10.6 and later. AppleScriptObjC — AppleScript with the added ability to call MacOS X’s Objective-C-based frameworks using AppleScript syntax.
New in AppleScriptObjC Explorer 2.5.0
- Script stepping. You can now step through scripts a statement at a time using new Step, Resume and Resume to Selection commands.
- Updates to exported apps. Exported apps get individually named executables, plus correct name in their application menus.
- Bug fixes. Fixes to compiling, saving as .applescript files, and logging time-stamps.
There more details on the Applescript Resources Page.
When you compare the amount of resources and effort that goes into computer games with the amount that is available for scientific software it is clear that the games industry wind hands down. It is not surprising therefore that some enterprising scientists are looking at leveraging games technologies to build new applications.
The video games industry develops ever more advanced technologies to improve rendering, image quality, ergonomics and user experience of their creations providing very simple to use tools to design new games. In the molecular sciences, only a small number of experts with specialized know-how are able to design interactive visualization applications, typically static computer programs that cannot easily be modified. Are there lessons to be learned from video games? Could their technology help us explore new molecular graphics ideas and render graphics developments accessible to non-specialists?
For an example application have a look at:-
UnityMol is a molecular editor, viewer and prototyping platform, coded in C# with the Unity3D game engine. It was developed by Marc Baaden's team at the LBT laboratory at the IBPC institute of CNRS in Paris. UnityMol includes HyperBalls designed to visualize molecular structures using GPU graphics card capabilities based on shaders (GLSL or Cg). UnityMol can currently read Protein Data Bank (PDB) files, Cytoscape networks, OpenDX potential maps and Wavefront OBJ meshes.
XOP Toolkit 6.30 is now shipping. This release adds support for Xcode 4.3.2 through 4.6 and for Visual C++ 2012. This release is mostly to keep up with Xcode 4 changes and to add Visual C++ 2012 sample XOPs and documentation. As described in the release notes (Appendix C of the XOP Toolkit 6 manual), a side-effect of keeping up with Xcode 4 is that XOPs compiled by XOP Toolkit 6.30 require Igor Pro 6.20 or later. The requirement of Igor Pro 6.20 is the reason for bumping the XOP Toolkit version from 6.02 to 6.30. "6.30" was chosen because that is the contemporaneous Igor version. If you are a licensed XOP Toolkit 6 user, this is a free update.
IGOR Pro 6.3 has been updated.
Added a Batch Curve Fitting package: allows you to fit batches of data to the built-in or user-defined fitting function of your choice. A "batch" is a collection of similar data sets stored in waves to which a common fitting function, initial conditions, and weighting and masking waves have been applied. Each data set may be stored in a waveform, an XY pair, or in the columns of a 2D wave. Added the Scatter Dot Plot Panel. Scatter Dot Plots are one part category plot, one part scatter plot, and one part histogram. Like category plots they show total counts for multiple data sets, each labeled on the X axis. Like scatter plots they provide a sense of the data's distribution. Like histograms they sort data into bins of points in which all values fall into a range. The Multipeak Fitting 2 package now supports constraints on peak coefficients. NewImage supports direct RGBA color image plots. The FilterFIR notch filter length had been limited to 4001 points. Now the limit is 2147483647 points, which makes the minimum notch width 0.000107% of the sampling frequency.
There is a page of data analysis tools here.
In the previous tutorial we made use of the Virtual Computational Chemistry Laboratory web service to calculate aLogP and LogS, both these results were returned in a simple text format. More recently there has been an increased use of JSON format for data exchange.
Molinspiration provide a number of cheminformatics tools but also provide a RESTful web service these web services can be used to calculate a range of molecular properties and bioactivity predictions.
The output from both web services is available either as a JSON string or plain text, the web service can be accessed by submitting a URL
I’m not a Fortran programmer so I’ve perhaps not as close an eye on this as other areas, however looking at the Fortran IDE FTranProjectBuilder release notes it seems there have been 17 updates in the last 12 months. FTranProjectBuilder is now up to version 1.15 with new features being added at a steady rate. Of note for scientists FTranProjectBuilder has support for two of the most common parallel processing libraries. If your program is coded for MPI using OpenMPI or OpenMP and you have them installed, you can use FTranProjectBuilder to run on multiple processors.
These sites might also be useful
I’ve just added the latest script for Vortex.
In previous scripts we have generated data using a local Java program, C program, PERL script, and SVL program. In this tutorial rather than have a local application generate the data we will use a web service.
There are more scripts on the Hints and Tutorial pages.
I’ve previously highlighted the use of ChemDoodle web components to display molecular structures within a web page, and a recent publication DOI by Henry Rzepa lead me to explore some of the newer additions to the means to render molecules within a web page without the use of applets or plugins.
BBEdit 10.5.1 is a focused maintenance update which includes fixes for reported issues. This release consists entirely of fixes for reported issues, and contains no new features, nor changes to existing features.
Fixed crash which would occur after using the "Other..." menu item to choose an alternate file in the Markup Builder panel, then cancelling the file dialog, and then immediately dismissing the markup panel. On a Thursday.
FIXED BUG IN WHICH KEYBOARD EQUIVALENTS IN MODAL DIALOGS DIDNT WORK WHEN THE CAPS LOCK KEY WAS ENGAGED OK
An interesting piece on Ars Technica
The legacy of NeXT lives on in OS X NeXTSTEP technologies still fuel Macs, iPhones, and iPads 16 years later.
Readers might also enjoy this video
BBEdit has been updated to version 10.5.
I’m a great fan of BBEdit I’ve been using it as long as I’ve been using a Mac and it is my “swiss army knife” when it comes to opening unusual file types. It is also a great tool for programming, scripting and creating html pages (including Markdown). Version 10.5 is a significant feature update which includes support for Macs with the high-resolution "Retina" displays, assorted new features, and fixes for reported issues.
The release notes are always worth a read since they do reflect the humour of the BBEdit team, I’ve included a couple of the notes below.
When creating a new HTML document (from the dialog or from a template), there's a new substitution available: #LOCALE#. This is the "short" locale code corresponding to the "Language" setting in the dialog box, e.g. en, de, x-klingon, and the like…..
The "Show Clipboard" command on the Edit menu has been retired. It now lives on a farm upstate.
App state restoration has an indeterminate progress dialog, hopefully hinting that "No, we're not hung; we're busy".
The "current process" indicator in shell worksheets now has a spinny thing so that you know something's running, and a clicky thing if you want to stop the running thing indicated by the spinny thing.
With the release of the iPad mini Xcode has been updated to version 4.5.2 this update includes:-
Support for iPad mini and iPad with Retina display (4th generation).
Additional bug fixes and stability improvements.
Xcode 4.5 includes
- SDKs for OS X 10.8 Mountain Lion and iOS 6.
- Auto Layout now supported on both OS X and iOS.
- New localization workflow can share a single base .xib or .storyboard file for multiple locales.
- OpenGL debugger for iOS analyzes performance and suggests improvements.
- Debugger watchpoints can be set when running on a connected iOS device.
- Objective-C @synthesize command is generated by default when using properties.
- Objective-C adds literal syntax for numbers, arrays, dictionaries, and expressions.
- Xcode 4.5 runs on both OS X Lion and OS X Mountain Lion.
- Enhanced for the MacBook Pro with Retina display.
News for all you Fortran programmers out there.
Absoft Corporation announced immediate availability of new Pro Fortran 2013 for Mac OS
Primary new features of Absoft Pro Fortran 2013 include: - Compatible with Mountain Lion and X code command line toolset - New AVX optimizations improve application speed up to 10% - Many additional F2008 extension supported - Upgraded ATools/GUI environment simplifies application development - New AWE (Absoft Window Environment) spreadsheet feature allows graphical display of 2D arrays - Absoft HPC Scientific and Engineering numerical library included at no additional charge - Compatible with IMSL v7.0, & 6.0 and NAG 23 numerical libraries - Additional product details http://www.absoft.com/AbsoftMacIntelCompiler.htm
Pricing: $299 academic, $699 commercial. IMSL 32/64-bit bundle an available option
Chocolat is a text editor for Mac OS X, that combines native Cocoa with powerful text editing tools.
1.3.2 Feature – Image previews Feature – Hide line numbers Feature – Drag to reorder active files Feature – Subword movement using alt-ctrl-left/right (or ctrl-left/right you have that system shortcut disabled in System Preferences) Bug – Code completion moves above current line if clipped by bottom of screen Bug – Allow tabbing into document from find bar replace field
Xcode 4.5, was released on 19th September and is available free from the Mac App Store. Xcode is Apple's development environment. According to the release notes, Version 4.5 includes:
SDKs for OS X 10.8 Mountain Lion and iOS 6.
Auto Layout now supported on both OS X and iOS.
New localization workflow can share a single base .xib or .storyboard file for multiple locales.
OpenGL debugger for iOS analyzes performance and suggests improvements.
Debugger watchpoints can be set when running on a connected iOS device.
Objective-C @synthesize command is generated by default when using properties.
Objective-C adds literal syntax for numbers, arrays, dictionaries, and expressions.
Xcode 4.5 runs on both OS X Lion and OS X Mountain Lion.
Enhanced for the MacBook Pro with Retina display.
Additional bug fixes and stability improvements.
Vortex is an advanced data analysis package that understands chemistry, the capabilities of Vortex can be extended by the use of scripts. I’ve now created Vortex script exchange that users can use to download or share scripts.
There are also a series of scripting tutorials here to provide a starting point for creating new scripts.
Hopefully these scripts will be valuable to you.
A new version of Matlab has been released.
MATLAB® is a high-level language and interactive environment for numerical computation, visualization, and programming. Using MATLAB, you can analyze data, develop algorithms, and create models and applications. The language, tools, and built-in math functions enable you to explore multiple approaches and reach a solution faster than with spreadsheets or traditional programming languages, such as C/C++ or Java™.
I recently wrote a review of ForgeV10 in which I imported the results into Vortex for analysis. This works fine the only issue being the resulting structures are 3D which makes interpretation of the structure sometimes difficult to discern, this script uses OpenBabel to create SMILES which can be rendered as 2D images.
iOS and OS X Graphing Library Free For Development
VVI today announced the availability of it’s graphing library for iPhone, iPad, iPod touch and Macs. Version 10.8.3 of the graphing libraries and frameworks, aka Vvidget Code, brings the following achievements:
- Supports deployment to OS X versions 10.6 to 10.8 (Macs) and iOS versions 4.3 to 5.1 (iPhone, iPad and iPod Touch).
- Supports development on OS X versions 10.6 to 10.8 and Xcode 3.2 to 4.4.1.
- Uses native API on deployment platforms for the fastest and most robust possible implementation. That is, Cocoa Touch for the iPhone, iPad and iPod Touch and Cocoa for the Mac.
- Use for development is free.
- Eleven Vvidget-based applications available from VVI on the iTunes App Store for iPhone, iPad and iPod Touch and on the Mac App Store demonstrate Vvidget Code in actual situations.
- Applications based upon Vvidget Code are free-standing and require no additional installs. Vvidget Code itself can be installed using package installers or shared using free-standing Xcode projects.
- Download and install instructions are at: Download And Install Vvidget Code
Please email firstname.lastname@example.org for additional information.
From the latest issue of Journal of Cheminformatics
The work presented here details the Avogadro library, which is a framework providing a code library and application programming interface (API) with three-dimensional visualization capabilities; and has direct applications to research and education in the fields of chemistry, physics, materials science, and biology. The Avogadro application provides a rich graphical interface using dynamically loaded plugins through the library itself. The application and library can each be extended by implementing a plugin module in C++ or Python to explore different visualization techniques, build/manipulate molecular structures, and interact with other programs. We describe some example extensions, one which uses a genetic algorithm to find stable crystal structures, and one which interfaces with the PackMol program to create packed, solvated structures for molecular dynamics simulations. The 1.0 release series of Avogadro is the main focus of the results discussed here.
I’ve just come across another site providing applescripts, Macscripz.
MacScripz are just really simple scripts. They basically function as tweaks to your system. A script can range from simply deleting a file in your OS to altering a previous setting. What most scripts on this site will do is change a setting set by Apple initially to change a core behavior on your system. For example, the tweak Cloak&Dagger forces Finder (on OS X 10.7 and up) to display files Apple hides from its users. Every script on Scripz.com is pre-screened, so don't ever worry about harming your system with any of our tweaks, we only upload quality content.
I’ve added it to the Applescript Resources Page.
Script Debugger 5.0.3 is a free maintenance release addressing a series of issues that came to light following the release of Script Debugger 5.0. This maintenance release makes Script Debugger fully compatible with Mountain Lion (Mac OS X 10.8) and addresses a number of stability and performance issues.
I known there are a number of Fortran users so I thought I’d highlight this message
The Absoft Pro Fortran 2012 for Mac OS currently shipping is compatible with Mountain Lion. Absoft Pro Fortran 2012 Mac OS customers who purchased earlier than June 2012 who want to run on Mountain Lion will need to download the Service Pack v11.5.2 which can be done at no charge from the Absoft site: http://www.absoft.com/download/downloads.html
Pro Fortran versions prior to 2012 are not compatible with Mountain Lion and will require an upgrade.
Script Debugger an advanced script editor has been updated.
Improved Inline Find & Replace
Inspector Window and Result Drawer Unification
Script Debugger 5.0 combines Script Debugger 4.5′s various floating inspector panels and its Result drawer into three ‘tabs’ displayed along the right-hand side of each document.
New Bundle Editor Script Debugger 5.0 offers a new bundle editor where you can manipulate the resources contained within a bundled script or a script application.
Floating Mini Debugger This new window floats above all your applications.
New Value Explorer A central feature of Script Debugger is its value Explorers which let you inspect values. For Script Debugger 5.0, value Explorers have been completely re-implemented and simplified. The result is a much more powerful and efficient tool for examining values and exploring the objects and properties offered by the scriptable applications that you control in your scripts.
Element Filtering Script Debugger 5.0’s new Scope Bar lets you remove unwanted information from Explorers. For example, unselecting the ‘Empty Elements’ filter removes empty elements from the Explorer’s display.
Improved Handling of Large Element Collections Script Debugger 4.5 could slow down when displaying large element collections, such as the rows in a database. Script Debugger 5.0 avoids this problem by initially displaying only the first 30 rows. Data is then retrieved from the application for only those rows visible in the Explorer. Other rows are read only when they are scrolled into view. Press the new show more button to view additional rows.
New Apple Event Log Script Debugger 5.0 introduces an entirely new Apple Event Log which is integrated directly into the script window.Apple Events are now retained even when the log is not visible, allowing you to look at the event log without having to plan ahead. Additionally, you can change formats (source, raw, AEPrint) on the fly without having to re-run your script.
Explorable Local Variables When stepping through handlers, local variables containing object references can be explored in Script Debugger 5.0. Additionally, object references passed into handlers can show the target application.
Conditional Breakpoints Script Debugger 5.0 lets you assign conditions and actions to breakpoints.
Separate Running & Debugging Toolbars Script Debugger 5.0 offers two toolbar configurations: one for when debugging is disabled; and another for when debugging is enabled. You can customize the toolbar based on how you are using Script Debugger 5.0.
Script Debugger 5.0 improves its object model diagrams by showing element (one-to-many) relationships, and property (one-to-one) relationships.
Improved Spotlight Indexing
Fully 64-Bit Native
Computing is now a critical component of many areas of science and access to the code used is an important component of the review process. The Science Code Manifesto attempts to formalise this.
Code. All source code written specifically to process data for a published paper must be available to the reviewers and readers of the paper.
Copyright. The copyright ownership and license of any released source code must be clearly stated.
Citation. Researchers who use or adapt science source code in their research must credit the code’s creators in resulting publications.
Credit. Software contributions must be included in systems of scientific assessment, credit, and recognition.
Curation. Source code must remain available, linked to related materials, for the useful lifetime of the publication.
There is a more detailed discussion here.
KosmicTask is an integrated scripting environment for Mac OS X. Whilst Mac OS X supports a number of scripting technologies either via it’s UNIX roots (Shell scripting , Perl etc.) or via Cocoa Framework Scripting using Apple’s scripting bridge (Applescript, Ruby, Python etc.) you can end up using a different script editor for each scripting language. KosmicTask allows you to script in a wide variety of languages from within a single editor. KosmicTask uses a plugin architecture that allows it to support a range of scripting languages, details of the languages supported by KosmicTask are shown below:-
- AppleScript Cocoa - AppleScriptObjC
- Bash Shell
- C Shell
- C and C++
- F-Script Cocoa
- Korn Shell
- Lua Cocoa
- Python Cocoa - PyObjC
- Ruby Cocoa
- Tenex C Shell
- Z Shell
KosmicTask also supports another very capable means of achieving automation - appscript. Appscript is supported by both Ruby and Python an alternative to the ScriptingBridge.
It also allows sharing of scripts with other KosmicTask users via the local shared network.
I’ve also added it to the list of Applescript Resources.
The 1Q KNIME newsletter is out. Discussion of text mining, the Feb UGM and Tips and Tricks.
KNIME (Konstanz Information Miner) is a user-friendly and comprehensive open-source data integration, processing, analysis, and exploration platform.
There is a KNIME tutorial here.
I’m not a Fortran user myself but I know a lot of scientists swear by it for high performance code, so I thought I’d mention Nocturnal Aviation Software the creators of FTranProjectBuilder the only Mac-native Fortran development environment (IDE) it works with the gfortran, g95, ifort, Absoft Pro Fortran, NAG nagfor and PGI pgfortran compilers.
FTranProjectBuilder is for scientists, engineers and students. It's useful for large, complex projects, but makes even simple programs easy to manage. To speed up program development it has:
- Single window interface
- Editor, console and notes views
- Project wide search
- Execution input from console or file
- Execution timer
- Errors and search results organized by file in outline view
- Add files by drag and drop, or import an existing makefile
FTranProjectBuilder manages the dependencies, object and module files, program executable and a standard makefile for you. You spend your time working on your code. FTranprojectBuilder does the rest.
One of the critical activities of most drug discovery programs is the identification of novel leads, these hits can come from high throughput screening or fragment-based screening There is however great interest in virtual screening which allows the evaluation in silico of a vast number of compounds and the selection of a subset that have a greater chance of desired activity. The virtual screening can be achieved by searching using sub-structures or molecular descriptors, by docking potential ligands into the target protein and scoring the resulting docked pose, or by comparing with the shape and/or electrostatic map of a known ligand.
Shape-it is a tool developed by Silicos-it that aligns a reference molecule against a set of database molecules using the shape of the molecules as the align criterion. It is based on the use of Gaussian volumes as descriptor for molecular shape as it was introduced by Grant, J.A.; Gallardo, M.A.; Pickup, B.T. (1996) ‘A fast method of molecular shape comparison: a simple application of a Gaussian description of molecular shape’,J. Comp. Chem. 17, 1653-1666.
This script shows how to run shape-it from within Vortex, bringing in the shape matching scores for filtering and analysis.
Absoft Corporation, today announced general availability of a new Xcode 4.3 Compatibility Pack for Absoft Pro Fortran 2012 customers running Mac OS X. The Compatibility Pack is available (only) as part of Absoft's new Service Pack v11.5.1 for Pro Fortran 2012 Mac OS customers.
The Compatibility Pack allows installation of Pro Fortran 2012 with Xcode 4.3 and is compatible with Apple's reorganized directory structure.
The Service Pack v11.5.1 which includes the Compatibility Pack for Mac OS X can be downloaded at NO CHARGE by current Absoft Pro Fortran 2012 Mac OS X customers from:http://www.absoft.com/download/downloads.html
I’ve just added a new Vortex script, this one uses a PERL script that is part of the excellent MayaChemTools.
Scripting Vortex Using OpenBabel
Scripting Vortex 2 Using filter-it
Scripting Votrex 3 Using cxcalc
Scripting Vortex 4 Using MOE
Scripting Vortex 5 Calculating similarities using OpenBabel
Scripting Vortex 6 Filtering compounds
Scripting Vortex 7 Using MayaChemTools
I’ve just added another Vortex script. In this script we will make use of the ability of filter-it to categorise input molecules into 1) a set of molecules that fulfil all criteria as defined in the filter definition file (passed molecules), and 2) a set of molecules that do not fulfil at least one of the defined filter criteria (failed molecules). The filter file defines the criteria for acceptable calculated phisicochemical properties and also any substructures that should be included or excluded during the filtering. The filter file is a simple text file that users can define for themselves, there is a detailed explanation on the silicos-it website. They also provide several example filters “Leadlike”, “Druglike”, “CMCLike” and “Clean” which cleans up a file without imposing a “drug like” filter. It should be relatively straight-forward for users to create their own filters, one could imagine a rule-of-3 filter that might be used in fragment-based screening approaches, or a toxicphore filter based on SMARTS shown to be implicated in a specific toxicity. It might also be possible to define project specific filters if a project requires a specific profile. If you need help it might be worth contacting Silicos-it.
In December the DOE Office of Advanced Scientific Computing Research (ASCR) published a report on Cloud Computing for Science. The key findings were
- Cloud approaches provide many advantages, including customized environments that enable users to bring their own software stack and try out new computing environments without significant adminis- tration overhead, the ability to quickly surge resources to address larger problems, and the advantages that come from increased economies of scale. Virtualization is the primary strategy of providing these capabilities. Our experience working with application scientists using the cloud demonstrated the power of virtualization to enable fully customized environments and flexible resource management, and their potential value to scientists.
- Cloud computing can require significant initial effort and skills in order to port applications to these new models. This is also true for some of the emerging programming models used in cloud computing. Scientists should consider this upfront investment in any economic analysis when deciding whether to move to the cloud.
- Significant gaps and challenges exist in the areas of managing virtual environments, workflows, data, cyber-security, and others. Further research and development is needed to ensure that scientists can easily and effectively harness the capabilities exposed with these new computing models. This would include tools to simplify using cloud environments, improvements to open-source clouds software stacks, providing base images that help bootstrap users while allowing them flexibility to customize these stacks, investigation of new security techniques and approaches, and enhancements to MapReduce models to better fit scientific data and workflows. In addition, there are opportunities in exploring ways to enable these capabilities in traditional HPC platforms, thus combining the flexibility of cloud models with the performance of HPC systems.
- The key economic benefit of clouds comes from the consolidation of resources across a broad community, which results in higher utilization, economies of scale, and operational efficiency. Existing DOE centers already achieve many of the benefits of cloud computing since these centers consolidate computing across multiple program offices, deploy at large scales, and continuously refine and improve operational efficiency. Cost analysis shows that DOE centers are cost competitive, typically 3–7x less expensive, when compared to commercial cloud providers. Because the commercial sector constantly innovates, DOE labs and centers should continue to benchmark their computing cost against public clouds to ensure they are providing a competitive service.
Eagle Genomics have a nice summary, that addresses many of the highlighted issues.
I’ve just posted the latest tutorial on scripting the chemically intelligent spreadsheet application Vortex, this tutorial shows how to use OpenBabel to provide similarity searching.
The full list of Vortex scripting tutorials are shown below.
More hints and tutorials can be found here.
The 'AppleScriptObjC Explored' Addenda and Errata page has been updated to cover a change made in Xcode since version 4.0 came out. <http://www.macosxautomation.com/applescript/apps/errata.html>
AppleScriptObjC Explorer v2.2 is now available. It's a free update to existing users, and incorporates all the changes in the last beta version, plus built-in updating.
Myriad Helpers 1.0.2 is now available. It's a minor update, offering a new method fordTrig: to give access to trigonometry functions. <http:www.macosxautomation.com/applescript/apps/helpers.html>
Over the years I’ve migrated from Applescript Studio applications to AppleScriptObjC using Xcode 3 and last week I made the transition to Mac OSX 10.7.x and Xcode 4. With each transition there has been a very steep learning curve and to be honest the documentation provided by Apple has been woefully inadequate. Thankfully Shane Stanley has stepped up to the plate and provided a definitive guide for this people who want to build applications using applescript. AppleScriptObjC Explored is the definitive guide to building AppleScript Objective-C applications. It guides you step-by-step through the process of integrating the power of Cocoa into your AppleScript applets and applications, demonstrating each concept and technique in fully editable and annotated example projects.
The latest edition also includes a detailed navigation of Xcode 4, for those of us who had just learnt our way around Xcode 3 the changes made in the new version are significant and the section explaining where everything is and what they are for is invaluable, in fact it is probably worth reading this section before you start trying to write your first application.
Once you have a basic understanding of Xcode adding an interface to your script becomes largely point and click.
There is also a very useful section on trouble-shooting, and explanation of “gotchas” that will crop up occasionally.
The book comes with a collection of over 20 ready built Xcode tutorials/projects that demonstrate key implementations but that can also act as starting points for your own projects.
- I regularly look at the Google search terms that users enter on this site and I notice that recently there have been a number of people looking for programming resources. So if you are looking for a suitable Christmas present here are a collection of books that I've heard good things said about.