ELENESSKI GAMES
  • Home
  • Games
    • Worzzler
    • The Lost Tribes
  • Unity
    • Facade Generator for Archimatix
    • Elenesski Object Database
    • Generic Move Camera
    • Unity C# Library
  • SQLINQ
    • Change Log
    • Concepts >
      • Overview
      • The Patterns
      • Database & Factories
      • Working with Tables
      • Custom Queries
      • Lazy Loading
      • Units of Work
    • Video Tutorials
    • Getting Started
    • Code Examples >
      • Implementing Behavior
      • Finding Objects
      • Custom Searches
      • Converters and Transformers
      • Object Association Management
      • New Objects
      • Creating Database
      • Associating Objects
      • Deleting Objects
      • Validating Objects
      • Saving
    • Sample Model >
      • Tutorial Model
      • Table Classes Code
      • Domain Classes Code
      • Factories Code
    • OSX Developers
    • Bridge Building
    • External Websites
    • Class Documentation
  • Presentations
    • 3D Ship Design
  • Music
    • Jamendo (Main)
    • Blend
    • Sound Cloud
    • Mixcloud (DJ)
    • DJ Demos
  • YouTube

information for Mac/OSX Developers

I own both a Windows PC (my primary development machine) and two Macs (Mac Mini and Mac Book Air).  When I decided to use the Software Ideas Modeller (SIM), I realized that I was potentially affecting more than 10% of the Unity developers. 

The main driving reason to pick SIM was because it was free for non-commercial users and commercial users only needed to pay US$45/seat.

OSX Developers have several ways to use SQLINQ:
  1. Use a Windows Virtual Machine
  2. Use a Windows Virtual Server
  3. Build your own Modelling Bridge
  4. Write SQLINQ compatible code manually

use a windows virtual machine

This is the standard way that most OSX users use Windows.  They download a Virtual Machine for OSX and run windows within it such as VMWare, BootCamp, Wine, CrossOver, MS Virtual PC, etc.

This might not be an option for you if you don't own a Windows license; as they tend to be expensive.

use a windows virtual server

This involves the creation of a Windows VM on the cloud using a platform such as EC2 on Amazon Web Services.  Their first year FREE TIER allows you to run a small micro server for almost nothing ... AWS charges me less than US$1/mo.


The following is a very terse description of the main steps.  AWS can be quite involved.


You install a 64-bit server that is Free Tier Eligible.  For this example, I used "Microsoft Windows Server 2012 Base - ami-bb634e8b".
Picture
Then click REVIEW AND LAUNCH ... and continue to accept until it launches the instance.  Eventually you will see this panel (within 2-3 minutes), and click CONNECT:
Picture
At this point you need Microsoft's Remote Desktop (free) to access the server. 

Once you access the server, download the Software Ideas Modeller using the 64-bit Portable version.  This version allows you to use the software without installing it on the server.


Picture

SIM runs fine on AWS using the 64-bit Portable version.  I took the download and extracted it to "C:\SIM":
Picture


Then ran the modeller directly by double clicking the "SoftwareIdeasModeler.exe" program:



Picture
Once you have completed modelling, you can get the FILE off of the windows machine and into your OSX environment with copy-and-paste. 

Unfortunately, Microsoft's remote desktop software doesn't, yet, support file-copy-and-paste, so you'll have to open the SIMP file with Windows notepad, select all the data, then in OSX, paste it into a new file using a text editor like "Text Edit".  This will work because the SIMP file format is pure XML.


DON'T FORGET TO STOP your AWS Server when you are done!!



build your own Modelling bridge

While we couldn't find free UML tools for OSX that had an open architecture, there is no reason why you cannot use your own. See the Bridge Building section.


Write sqlinq compatible code manually

While the system has a code generator, there is actually nothing that prevents you from writing the code that the SQLINQ Generator creates by hand.  I used to do this when I first created the SQLINQ when I was writing iOS apps.  It was only when I moved to Unity that I wrote the code generator to further increase my productivity within Unity.